两个对话框之间的闪烁一个接一个地显示

时间:2013-09-04 13:50:43

标签: mfc

CMainDialog::DoSomething()
{    
    CMyDialog1 dlg1;
    dlg1.DoModal();

    CMyDialog2 dlg2;
    dlg2.DoModal();
}

问题是dlg1返回后,在显示dlg2导致闪烁之前,父对话框会短暂显示。这是不可取的,我怎么能摆脱这个?我在上面的函数中使用了SetRedraw(FALSE),但这没有帮助。

1 个答案:

答案 0 :(得分:0)

在资源编辑器中,转到CMyDialog1的属性并使dlg1最初不可见。

当您准备好显示dlg1时,请使用dlg1.ShowWindow(SW_SHOW)