2012-09-22 33 views
0

這太荒謬了。我有一個我感興趣的KeyDown事件(用於獲取DownArrow Key事件)的WinForm。我添加了一個trackbar,它獲得了自動對焦(我不知道如何)。現在,當我按下向下箭頭鍵 - 它會自動更改跟蹤欄的值,我的Winform代碼無法正常工作。我試着用按鈕隱藏Trackbar,但無濟於事。我甚至有我的Form1_KeyDown()處理程序中的當Trackbar存在時攔截WinForm上的KeyDown事件

e.SuppressKeyPress = true; 

幫助,我要走了。

回答

0
+0

不幸的是,UP | DOWN | LEFT | RIGHT /是/觸發的KeyDown()事件,他們正在被消耗的TrackBar。我找到了一個解決方案。它將覆蓋Trackbar的KeyDown()事件,並調用Form1_KeyDown()事件。 –

+0

您是否使用ProcessCmdKey()方法檢查過?如果你按下窗體上的任何鍵,如果你在窗體代碼隱藏文件中覆蓋它,這個方法將被執行。 –