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

Вниз

clipboard   Найти похожие ветки 

 
snake77   (2005-12-14 10:29) [0]

Здравствуйте!
подскажите как сделать опрос clipboard на наличие в нем какой бы то нибыло информации. Япопробовал сделать в цикле, но при этом сильно грузится машина.
Я так понимаю что надо делать событийно, т.е. при появлении чегото в клибоарде должна вызываться процедурка.
у TClipboard нет эвентов, хук тоже ненайду
:(


 
Rouse_ ©   (2005-12-14 10:49) [1]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
   procedure FormDestroy(Sender: TObject);
 private
   hwndNextViewer: THandle;
   procedure WMChangeCbChain(var Message: TWMChangeCBChain); message WM_CHANGECBCHAIN;
   procedure WMDrawClipboard(var Message: TMessage); message WM_DRAWCLIPBOARD;
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 // Add the window to the clipboard viewer chain.
 hwndNextViewer := SetClipboardViewer(Handle);
end;

procedure TForm1.WMChangeCbChain(var Message: TWMChangeCBChain);
begin
 with Message do
 begin

   // If the next window is closing, repair the chain.
   if Remove = hwndNextViewer then
     hwndNextViewer := Next

   // Otherwise, pass the message to the next link.
   else
     if hwndNextViewer <> 0 then
       SendMessage(hwndNextViewer, Msg, Remove, Next);
 end;
end;

// clipboard contents changed.
procedure TForm1.WMDrawClipboard(var Message: TMessage);
begin
 // Pass the message to the next window in clipboard
 // viewer chain.
 with Message do
   SendMessage(hwndNextViewer, Msg, WParam, LParam);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 ChangeClipboardChain(Handle, hwndNextViewer);
end;

end.



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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
8-1122528536
Wm.DIGGER
2005-07-28 09:28
2006.01.01
Событие буфера DirectSound?


2-1134487967
root
2005-12-13 18:32
2006.01.01
Как исполнить bat(cmd) файл


5-1120204585
wertolet
2005-07-01 11:56
2006.01.01
DBGrid со свойством ScrollBars


4-1130512622
Arazel
2005-10-28 19:17
2006.01.01
Почему вторая форма не получает сообщение?


14-1133712022
vladik
2005-12-04 19:00
2006.01.01
проблема при установки системы