Re: [問題] MFC Dialog
很簡單.
直接在 CMyDlg::OnCancel裡, 不做任何事就return. 如下
void CTestDlg::OnCancel()
{
// TODO: Add extra cleanup here
//CDialog::OnCancel();
return;
}
然後再把 IDCANCEL那個Button的ID改掉,
改成 MYIDCANCEL, 點兩下去新增function,
在新的 OnMYIDCANCEL裡去呼叫 CDialog::OnCancel(); 如下
void CTestDlg::OnMYIDCANCEL()
{
// TODO: Add your control notification handler code here
CDialog::OnCancel();
}
※ 引述《PTTSuck (Kubrick)》之銘言:
: [36m開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: VC6.0
: 問題(Question):
: 使用Dialog的DoModal功能,希望按下ESC時不做任何動作。
: 補充說明(Supplement):
: 設計想法:
: 將某些功能包成一個控制室窗執行,
: 不用Create的原因在於預防主程式其他的功能和控制視窗的功能打架,
: 若使用Create則必須在開啟視窗時把所有可能起衝突的UI Disable,
: 管理上相當繁瑣。
: 若使用DoModal則可將focus限定在該視窗內,感覺比較俐落;
: 但原PO希望使用者能依照正常程序結束視窗,
: 也就是OK/Cancel,鍵盤ESC有可能在控制視窗尚未完成工作時就跳離,
: 因此希望保留OK/Cancel功能但不要使用鍵盤離開DoModal。
: 謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.69.87.123
討論串 (同標題文章)