2011年11月11日 星期五

[MFC] 設定對話窗中預設的控制項焦點

事情是這樣的,我們的程式有個小修正
請工程師將程式預設的控制項改到輸入資料的Edit Box上
控制項焦點不要放在預設的OK按鈕
如此一來使用者便不用再用滑鼠點Edit Box或用Tab鍵更改控制焦點
也避免程式開起之後Enter多按一次馬上按到OK鍵
但是又過了一個版本依然沒有修正這問題
工程師反應CWnd的SetFocus()函式無法正確地將控制焦點設定好
後來去幫忙看問題時發現OnInitDialog()裡面有個小小的"眉角"
正是這個問題的關鍵所在!
與大家分享~

* 在OnInitDialog()設定了控制項焦點, 但是無法動作












* 關鍵在這裡, 
OnInitDialog()必須回傳FALSE, 設定控制項焦點才能正常動作




沒有留言:

張貼留言