在運行win CE 6.0的設備上有一個按鈕,您需要捕捉它按下的時刻。也就是說,直到我們按下按鈕,我們的方法才執行,釋放 - 停止方法。請幫助解決問題。win CE 6.0設備上的按鈕
1
A
回答
2
這裏是源代碼到CodeProject做你想要的東西的鏈接:
http://www.codeproject.com/Articles/49881/Hooking-the-keyboard-message-queue-in-compact-fram
我在我自己的WM項目成功地使用此代碼來重新利用音量鍵和一些其他的硬件按鈕(我在一個屏幕上使用音量上/下作爲觸發器來翻轉屏幕方向)。
有太多的代碼要在這裏發佈。該項目是這似乎是所有可用的鑰匙全面上市vkmap.cs:
public static vkMap[] vkValues = {
new vkMap (0x00, "VK_NOTDEF"),
new vkMap (0x01, "VK_LBUTTON"),
new vkMap (0x02,"VK_RBUTTON"),
new vkMap (0x03,"VK_CANCEL"),
...
new vkMap (0x30,"VK_0"),
new vkMap (0x31,"VK_1"),
...
new vkMap (0x41,"VK_A"),
...
new vkMap (0xA6,"VK_BROWSER_BACK"),
new vkMap (0xA7,"VK_BROWSER_FORWARD"),
new vkMap (0xA8,"VK_BROWSER_REFRESH"),
等..所有的一切有些258個鍵,但有些被標記爲未定義。如你所願
HookKeys hook = new HookKeys();
hook.HookEvent += new HookKeys.HookEventHandler(HookEvent);
hook.Start();
然後在你的事件處理程序的代碼 - 我用switch語句來找到我想要的鍵:
使用代碼
switch (vkMap.vkValues[keyBoardInfo.vkCode].s)
{
case "VK_F6":
if ((hookArgs.wParam.ToInt32() == WM_KEYDOWN) || (hookArgs.wParam.ToInt32() == WM_SYSKEYDOWN))
// Code here
break;
case "VK_F7":
if ((hookArgs.wParam.ToInt32() == WM_KEYDOWN) || (hookArgs.wParam.ToInt32() == WM_SYSKEYDOWN))
// Code here
break;
default:
break;
}
我不記得爲什麼我也在檢查WM_KEYDOWN和WM_SYSKEYDOWN ..對此抱歉,如果我記得我會發佈一個編輯。
當你完成需要輸入:
hook.Stop();
相關問題
- 1. 安裝Win CE 6.0許可證
- 2. 無法在Win CE設備上設置時間
- 3. 如何使用EMDK 2.6關閉/重新啓動移動設備(Win CE 6.0)?
- 4. 無法設置enviornment變量在Platform Builder中的Win CE 6.0
- 5. 移動設備上的.NET應用程序(Win CE)
- 6. 如何將Win Mobile 6項目轉換爲Win CE 6.0 RC2
- 7. 在WIN CE上激活藍牙CE
- 8. 從Win CE設備到SQL Server 2008 R2的SQL複製
- 9. 替代Win CE的Node js
- 10. 使用WCF服務的Win CE 6.0客戶端 - 減少帶寬
- 11. 重置Win CE註冊表
- 12. 調試不適用於Win CE 5.0設備
- 13. 使用USB同步兩個win ce 6設備
- 14. sqlclient連接錯誤,桌面sqlserver和Win設備之間sqlserver CE
- 15. 在Windows CE 6.0 .NET應用程序中的按鈕上可見的快捷鍵
- 16. QT在Win CE 5.0碰撞
- 17. 在Windows CE 6.0
- 18. HttpRequest/HttpResponse內存泄漏? CF.NET 3.5 WIN CE 6.0
- 19. 啓動後Win CE 6.0運行時圖像變黑屏幕
- 20. 如何創建一個WIN CE 6.0 LCD驅動程序?
- 21. 如何在Win CE ARM嵌入式設備上運行node js服務器?
- 22. Android設備上的Sapui5後退按鈕
- 23. 4.0設備上的Android菜單按鈕
- 24. 我自己的任務欄Win CE
- 25. Win CE上的\關閉WLAN - 如何?
- 26. 在Win 7上構建SQL CE數據庫時無法讀取Windows設備 - Win 8
- 27. 在Windows CE 6.0上的QT/CE,應用程序不會運行
- 28. Android按鈕在設備上不可見
- 29. Windows 6.0 ce上的任務管理器Motorola MC3190掌上電腦
- 30. Win CE的建築庫庫
什麼樣的 「按鈕」 的?硬件還是軟件? – ctacke
硬件按鈕 – user1514422
然後它非常依賴硬件。這究竟是什麼硬件? – ctacke