如何利用左右鍵及回車鍵來轉移列的焦點

2021-08-22 05:26:52 字數 1146 閱讀 5885

如何利用左右鍵及回車鍵來轉移列的焦點

這要用到windows中的api函式keybd_event()

①定義api:

subroutine keybd_event(uint bvk,uint bscan,long dwflags,long dwextrainfo ) library "user32.dll"

②自定義一使用者事件(ue_keydown id:pbm_dwnkey):

integer vk_tab = 09

integer vk_shift = 16

if key = keyleftarrow! then

keybd_event(vk_shift,0,0,0) //按下shift

keybd_event(vk_tab,0,0,0) //按下tab

keybd_event(vk_tab,0,2,0) //釋放tab

keybd_event(vk_shift,0,2,0) //釋放shift

return 1

end if

if key = keyrightarrow! or key=keyenter! then

keybd_event(vk_tab,0,0,0) //按下tab

keybd_event(vk_tab,0,2,0) //釋放tab

return 1

end if

如若只是想利用enter鍵來實現tab鍵的功能可以用以下**:

if key=keyenter! then

send(handle(this),256,9,long(0,0)) //傳送tab鍵

return 1 //取消原enter鍵的動作

end if

[注]keybd_event()函式

說明: 這個函式模擬了鍵盤行動。

引數 型別及說明

bvk 欲模擬的虛擬鍵碼。

bscan 鍵的oem掃瞄碼。

dwflags long,零;或設為下述兩個標誌之一

&h1 指出是乙個擴充套件鍵,而且在前面冠以0xe0**。

&h2 模擬鬆開乙個鍵。

dwextrainfo long,通常不用的乙個值。api函式getmessageextrainfo可取得這個值。允許使用的值取決於特定的驅動程式。

通過上下左右鍵和回車鍵切換游標

做專案時,客戶提出這樣乙個要求,在列表中的文字框裡輸入資料時,要能夠通過上下左右鍵來切換游標,按回車鍵就把游標移到下乙個文字框。這樣就省得一直去用滑鼠了,操作起來更方便。不廢話,上 頁面 gdv runat server allowpaging true pagesize 50 autogenera...

如何使用回車鍵模仿Tab鍵

李中未 在delphi程式設計中,如何實現用回車鍵在若干個編輯視窗中切換?比如,姓名和密碼兩個輸入視窗,輸入姓名後,只能用tab鍵或用滑鼠定位游標到密碼輸入視窗,我想用回車鍵切換視窗。回答 先將窗體的keypreview屬性設為true。然後在formkeypress事件中加入以下 procedur...

如何用scratch卡死電腦 偵測回車鍵

說到scratch,大家一定會想到 以及最近鬧得沸沸揚揚的8.14 scratch官網被封事件 吃瓜 吃瓜 吃瓜 在此省略一百個吃瓜 不管如何,scratch終究是被拿來做遊戲的,初衷就是做遊戲的,給孩子們玩的,不過最近好像不是這樣 projects 507328 文字編輯器 projects 44...