Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как глобально перехватить нажатие кнопки PrintScreen?

01.01.2007

В примере для глобального перехвата нажатия клавиши print screen регистрируется горячая клавиша (hot key).

 

type 
               TForm1 = class(TForm) 
                 procedure FormCreate(Sender: TObject); 
                 procedure FormDestroy(Sender: TObject); 
               private 
                 { Private declarations } 
                 procedure WMHotKey(var Msg : TWMHotKey); message WM_HOTKEY; 
               public 
                 { Public declarations } 
               end; 
 
             var 
               Form1: TForm1; 
 
             implementation 
 
             {$R *.DFM} 
 
             const id_SnapShot = 101; 
 
             procedure TForm1.WMHotKey (var Msg : TWMHotKey); 
             begin 
               if Msg.HotKey = id_SnapShot then 
                 ShowMessage('GotIt'); 
             end; 
 
             procedure TForm1.FormCreate(Sender: TObject); 
             begin 
               RegisterHotKey(Form1.Handle, 
                              id_SnapShot, 
                              0, 
                              VK_SNAPSHOT); 
             end; 
 
             procedure TForm1.FormDestroy(Sender: TObject); 
             begin 
               UnRegisterHotKey (Form1.Handle, id_SnapShot); 
             end;