1
我有一個對話框,我需要在CPropertySheet和獨立對話框中顯示對話框。我選擇了沒有兩個單獨的類來避免代碼冗餘(我在這些對話框中進行了很多修改,並且必須不斷地同步兩個類會是地獄),而當我想將它顯示爲獨立對話框時,我只是調用CPropertyPage :: DoModal。這會導致一些問題,但我已經解決了其中的大部分問題。當顯示爲獨立對話框時,CPropertyPage派生的對話框不會在Esc上關閉
但是,有些仍然存在,即進入和esc不工作。同時按下標籤不會改變焦點。這讓我覺得CPropertyPage會吃掉所有的鍵盤輸入,或者試圖將它們傳遞給它的父項。
任何想法如何在獨立模式下覆蓋該行爲?
當我看着'的CPropertyPage :: PreTranslateMessage'的源代碼,事實證明它只是調用'CWnd :: PreTranslateMessage'。所以我試着調用'CDialog :: PreTranslateMessage',奇蹟般地開始工作,包括tab鍵和所有東西。 – sashoalm 2012-07-19 15:43:46