Вниз
Скачать: CL | DM;

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

← →
pusrg ©   (2002-03-14 20:40) [0]

Господа программисты, не подскажете как можно сохранить буфер обмена в независимости от формата, сделать с ним определенные действия и восстановить его?


← →
Song ©   (2002-03-14 21:13) [1]

Класс TClipBoard
см. методы у него.


← →
pusrg ©   (2002-03-14 21:26) [2]

To Song
Про методы этого класса я знаю...
Но тогда не подскажете какой из них использовать для сохранения абсолютно любых данных?
Если использовать метод assign, то непонятно какого типа должен быть обьект - хранитель данных из буфера. Типы ТPersistent, TClipBoard не проходят.


← →
pusrg ©   (2002-03-15 14:15) [3]

Мужики, неужели никто не знает как временно сохранить данные из буфера?
Если это задача в принципе не выполнима, так и напишите...


← →
digitman ©   (2002-03-15 15:08) [4]

выполнима, почему же нет ?)

1. вызовом EnumClipboardFormats() получаешь инф-цию обо всех форматах, доступных в БО. Запоминаешь их.

2. В цикле по всем полученным форматам получаешь их HGLOBAL-хэндлы вызовом GetClipboardData(). Получаешь размер блока глоб.хипа, распределенного под очеред.формат, выделяешь соотв. по размеру блок в лок.хипе своего процесса, блокируешь хэндл глоб.блока вызовом GlobalLock(), копируешь его содержимое любым способом в свой лок.блок, разблокируешь хэндл глоб.блока.

3. Очищаешь БО.

4. Пользуешься им как тебе вздумается.

5. В цикле по сохраненным форматам восстанавливаешь первонач.содержимое БО вызовами GlobalAlloc(), GlobalLock()/Unlock(), SetClipboarddata()


← →
MBo ©   (2002-03-16 07:52) [5]

Я делал сохранение/восстановление в/из файла, у digitman-а абсолютно все шаги расписаны.


← →
pusrg ©   (2002-03-16 18:01) [6]

To Digitmat, to MBo
Спасибо за Ваши отзывы!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
1-90888
kronos
2002-03-15 13:03
2002.03.28
Что это означает?


3-90801
LEKSYS
2002-03-04 16:50
2002.03.28
TreeView


1-90859
Ahd
2002-03-14 23:39
2002.03.28
B сплайны


14-91045
UnDISCOvery
2002-02-13 17:07
2002.03.28
Не возникает событие OnActivate !!!


1-90955
skywalker
2002-03-14 11:36
2002.03.28
Ресурс курсора




   Наверх