Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с буфером обмена


pirate ©   (2006-03-10 17:36:00) 

Подскажите, дорогие друзья, как и какими средствами можно:

1) Получить текст, содержащийся в буфере обмена
(если конечно это текст).

2) Перехватить нажатие клавиш Ctrl+C, Ctrl+X и Ctrl+V.

3) Подменить строку содержащююся в буфере обмена.

Извините за нескромность, но попрошу на вопросы отвечать конкретно и по теме.

Заранее премного благодарен!


Джо   (2006-03-14 17:39:00) [1]

> [2] pirate ©   (14.03.06 16:29)
> Небольшай поправка:
> ... и его изменение.

См. п 2) в ответе [1] begin...end


clickmaker   (2006-03-14 16:59:00) [2]


> т.е. обработать что-то вроде OnPaste(..);

WM_PASTE


pirate   (2006-03-14 16:29:00) [3]

Небольшай поправка:
Необходимо перехватить не нажатие клавиш, а
вставку из буфера обмена, и его изменение.
т.е. обработать что-то вроде OnPaste(..);

Кстати до того как взять значение из буфера обмена и положить его туда я уже дошел сам:
uses Clipbrd...

...
var C:TClipboard;
begin
p:=C.AsText;
//etc
end;


begin...end   (2006-03-10 17:56:00) [4]

Конкретно и по теме:

1) OpenClipboard -> GetClipboardData(CF_TEXT) -> CloseClipboard

2) SetClipboardViewer + WM_DRAWCLIPBOARD

3) OpenClipboard -> SetClipboardData(CF_TEXT, ...) -> CloseClipboard


Наверх

Титульная страница Поиск, карта сайта Написать письмо