虛擬按鍵 By 莊明穎

內容簡介

構想:
是用雷射筆(Laser pointer)來代替按鍵, 這在報告中特別方便, 同時也適合行動不方便的人使用,當雷射筆指到某特定的button時, 就像和按下某鍵一樣。

在虛擬按鍵的實作中, 我們需要某系統函式來代替"按下按鍵"的動作,
這時我們可以用 proceudre kb_event(bVK,bScan, dwFlags, dwExtraInfo);
來 將按鍵的事件送入送入系統訊息佇列:

以下摘自 "Delphi 學習筆記 Win32 基礎篇 錢達智著"

proceudre keybd_event(
bVK: Byte;
bScan: Byte;
dwFlags, dwExtraInfo: DWORD); stdcall ;

參數:
bVK: virtual key code
bScan: Scan code
dwFlags: KEYEVENT_KEYUP=2, 表示按鍵放開, 否則表按下
dwExtraInfo: 與硬體有關的附帶資料

Return value: 無

//Caps lock pushed:
procedure pushed;
begin
    keybd_event(VK_CAPITAL ,MapVirtualKey(VK_CAPITAL,0), 0, 0);//按下
    keybd_event(VK_CAPITAL ,MapVirtualKey(VK_CAPITAL,0),     KEYEVENT_KEYUP, 0);    //放開
   //MapVirutalKey function convert
virtual key code to scan key code
end;

其他請自行查看 Windows SDK (Source Develop Kit).

 

更多資料 設定表單(Form)的顏色為透明的方法(Delphi)
程式下載 程式下載 By 莊明穎
 工具下載

 Capture Video Camera Buffer (From "Delphi 深度論壇")
(對程式內容不負任何責任)

Bitmap transformation utility