關(guān)于C#回車切換焦點實現(xiàn)的探討
C#回車切換焦點實現(xiàn)的探討,我們在學(xué)習(xí) Windows程序中Tab鍵是默認(rèn)的切換輸入焦點的按鍵,但用回車鍵切換輸入焦點更符合人們的輸入習(xí)慣。Delphi、VB中這個問題比較容易解決,VC 中卻很少有資料提到。通過反復(fù)嘗試C#回車切換焦點的實現(xiàn),我找到了一種方法,或許對大家有所幫助。
C#回車切換焦點實現(xiàn)1.
VC 中appwizard生成一個基于對話框的程序。切換resourseview狀態(tài),在對話框中插入一個編輯框,同時修改其styles屬性,選中multiline 、want return兩項。
C#回車切換焦點實現(xiàn)2.
①在classwizard中選add class增加一個新類,name定義為myedit,base class選擇edit。其余采用默認(rèn)選項。
②在新生成的my-edit類中加入wm-keydown的消息映射函數(shù),加入如下代碼。
- oid Myedit::OnKeyDown(UINT nChar,
- UINT nRepCnt, UINT nFlags)
- {
- // TODO: Add your message handler code here and/or call default
- if (nChar= = VK_RETURN) //插入開始部分
- {
- CDialog* Pwnd=(CDialog*)GetParent() ;//取得對話框指針
- Pwnd->NextDlgCtrl( ); //切換到下一個輸入焦點
- }
- //插入結(jié)束部分
- CEditView::OnKeyDown(nChar, nRepCnt, nFlags);
- }
C#回車切換焦點實現(xiàn)3.
在classwizard中選擇 member variables 選項,class name選擇對話框類,control ids中選擇編輯框的id號,然后選擇add variable按扭。在對話框中 categary選擇control, variable type 剛才定義的類myedit。
至此,全部工作結(jié)束,編譯運行程序,定位到編輯框中輸入回車鍵,看一看效果如何。
C#回車切換焦點的相關(guān)內(nèi)容就向你介紹到這里,希望對你了解和學(xué)習(xí)C#回車切換焦點的實現(xiàn)有所幫助。
【編輯推薦】