Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.05;
Скачать: CL | DM;

Вниз

Буфер обмена   Найти похожие ветки 

 
cult ©   (2003-04-23 12:12) [0]

Злые языки утверждают, что в ClipBoard может одновременно храниться несколько объектов разных форматов, то есть одновременно и компонент, и текст, и что-то по хэндлу. А у меня так не получается! Если я делаю, например, SetAsHandle, то то, что я клал как SetComponent или SetTextBuf, пропадает. И наоборот. То есть, получается, только один объект может лежать, просто разные методы запихивания? Просветите, плз.


 
evvcom ©   (2003-04-23 12:15) [1]

Имеется такая штука в новом Office XP, но по-моему это чисто их прибамбас (офисный), а в ОС это не реализовано.


 
Palladin ©   (2003-04-23 12:17) [2]


> cult © (23.04.03 12:12)


> evvcom © (23.04.03 12:15)

злые языки иногда правду говорят...
поизучайте справку на эту тему...
по крайней мере на NT ядре, это так и есть


 
Palladin ©   (2003-04-23 12:26) [3]

хотя я немного не прав...

в clipboard данные могут хранится одновременно в нескольких форматах и поэтому поводу такую фенечку как в OfficeXP можно организовать самому.


 
REA ©   (2003-04-23 12:26) [4]

могут быть разные форматы, воистину, начиная с Windows 3.11 или еще раньше.


 
MBo ©   (2003-04-23 12:27) [5]

OpenClipBoard
...
SetClipboardData
SetClipboardData
SetClipboardData
...
CloseClipBoard


 
evvcom ©   (2003-04-23 12:30) [6]

Ну что ж, может быть. Справку на эту тему не изучал, но может быть в оправдание возникают такие вопросы/предположения.
1. Тогда скорее это не на ядре NT, а на ядре Win2k/WinXP или даже только WinXP, хотя они и написаны на ядре NT. В NT4 о таком не было ничего слышно, и узнал я об этом только в Office XP, который и на NT4 замечательно работает.
2. Не пробовал, но думаю, что Office XP будет поддерживать эту возможность и в MustDie, что докажет, что это встроено в новый Office. А то бы, если это было встроено в те древние ОС, этим не воспользовались бы ранее?


 
cult ©   (2003-04-23 12:31) [7]

так а как этого добиться? если пользовать дельфовый ClipBoard, то копирование, например, компонента, делает недоступной, например, только что скопированную картинку.

То есть:

ClipBoard.SetAsHandle(AFormat,APictureHandle,APalette)
после этой строчки картинку можно вставлять, напр., в msPaint.


ClipBoard.SetComponent(AComponent)
а после этой - картинку уже нельзя никуда вставить, доступен только компонент.

И чё делать? :)



 
MBo ©   (2003-04-23 12:35) [8]

>cult
видел логику 12:27?
А теперь посмотри, как SetAsHandle работает - закрывает буфер.


 
cult ©   (2003-04-23 12:38) [9]

>MBo
ага, посмотрел уже, натурально, каждая функция закрывает буфер.
буду разбираться, спасибо


 
Palladin ©   (2003-04-23 12:39) [10]


> evvcom © (23.04.03 12:30)

1 нет, оказывается на всех мастдаях, см. справку
2 этим и ранее пользовалсь... не замечал что если в экселе скопировать в буфер некий range, то он и в блокнот вставится...
только разделенный #9 и #13#10

на самом деле если ковырнуть TClipBoard то можно увидеть многие интересные весчи которые вставляет в буффер офис.
при копировании текста из ворда в буфере присутствует 11 (!)форматов


 
evvcom ©   (2003-04-23 12:44) [11]

> Palladin
Ну да ладно. Пусть будет так. Не было пока нужды ковырять clipboard. Ну хоть общих познаний от обсуждения добавилось.



Страницы: 1 вся ветка

Текущий архив: 2003.05.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
1-12687
Макар01
2003-04-20 18:57
2003.05.05
Как программно запустить ярлык?


1-12810
Nomad
2003-04-22 12:22
2003.05.05
Сравнение строк, передаваемых в качестве параметров в функцию


1-12735
Nikos
2003-04-22 19:11
2003.05.05
Как восстановить текст, который был в поле Memo?


3-12627
User2
2003-04-14 17:15
2003.05.05
TComboBox и БД


14-12899
SiJack
2003-04-16 16:27
2003.05.05
ADO Access