關於KeyDown事件的疑問 |
尚未結案
|
DoubleFish2004
一般會員 發表:6 回覆:12 積分:3 註冊:2004-05-25 發送簡訊給我 |
各位大大好:
不知道這問題發表在這裡適不適當
若有錯誤~還請見諒 小弟一直對一事不解
一個視窗程式中,應該是有一個物件是被focus的狀態下
例如:當游標處於一個Edit中時,此Edit應該是處於Focused狀態下
因此按下鍵盤時引發的是Edit中的KeyDown事件
而不是Form中的KeyDown事件,而如果想引發Form上的KeyDown事件
則應該點一下Form,才去按按鍵,不知道這觀念是否正確? 假設上面無誤的話,若今日有一個Form其中有一將整個Form蓋住的
Image物件,而執行程式時,發覺按下按鍵,Form的KeyDown事件並未
被引發,那請問要如何才能將Focus轉回主Form上,使KeyDown事件
能正確的被引發呢?
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
|
DoubleFish2004
一般會員 發表:6 回覆:12 積分:3 註冊:2004-05-25 發送簡訊給我 |
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
|
DoubleFish2004
一般會員 發表:6 回覆:12 積分:3 註冊:2004-05-25 發送簡訊給我 |
在正式的程式中,主Form上有一個TLabel,2個TImage,和MainMenu
TForm.OnKeyDown中寫入ShowMessage('GOOD')做測試
結果:執行時按任何按鍵無效
如果再加入一個Button後如上述作設定後
結果:執行時按任何按鍵無效,但按下Button後再按任意鍵就會引發TForm.KeyDown事件,但關掉MessageBox後,KeyDown事件又失效了
持續不解中... 發表人 - DoubleFish2004 於 2004/05/26 17:44:22
|
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
DoubleFish2004 你好:
引言: 假設上面無誤的話,若今日有一個Form其中有一將整個Form蓋住的 Image物件,而執行程式時,發覺按下按鍵,Form的KeyDown事件並未 被引發,那請問要如何才能將Focus轉回主Form上,使KeyDown事件 能正確的被引發呢?請在 TForm.OnKeyDown裡面加上 if (( ActiveControl is TImage) then ShowMessge('OK');
------
====================== 昏睡~ 不昏睡~ 不由昏睡~ |
DoubleFish2004
一般會員 發表:6 回覆:12 積分:3 註冊:2004-05-25 發送簡訊給我 |
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
|
DoubleFish2004
一般會員 發表:6 回覆:12 積分:3 註冊:2004-05-25 發送簡訊給我 |
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
|
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
|
DoubleFish2004
一般會員 發表:6 回覆:12 積分:3 註冊:2004-05-25 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |