整個軟體有一個主對話框和其他次要的對話框。
根據需要,創建了一個圖形繪制的對話框,并且需要它在主對話框顯示。于是用創建子對話框的方式,將其顯示在主對話框。在主對話框的實作代碼如下:
void CDIBtDlg::Paint_Drawing()
{
subdlg = new CPaint_DrawDlg();
subdlg->Create(IDD_PAINT_DRAW_DIALOG, this);
subdlg->MoveWindow(316, 30, 420, 210);
subdlg->ShowWindow(SW_SHOW);
}
在主對話框的有些控制元件需要輸入資料,因此要用到UpdateData(true),但是一旦點擊輸入資料的按鈕時,瞬間卡住,毫無反應。
另外還有一種情況是,在主對話框呼叫其他對話框時,也會出現類似的問題。卡住不動,無任何錯誤提示。
呼叫其他對話框的代碼是這樣的:
void CDIBtDlg::OnIndata()
{
// TODO: Add your control notification handler code here
CINDATA mDlg;
mDlg.DoModal();
}
我在想,是不是因為在主對話框中嵌入的繪圖對話框,不支持UpdateData(true)來重繪,難道這里的繪圖對話框也變成控制元件了?
求各位大神幫幫忙!
感激不盡!
uj5u.com熱心網友回復:
Paint_Drawing這個是在哪釣用?在OnPaint里?uj5u.com熱心網友回復:
能發給我除錯嗎?
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/103837.html
標籤:界面
下一篇:mfc音樂播放軟體
