Windows(ce)下,无需资源文件也可以创建Dialog

来源:互联网 发布:淘宝柒牌官方旗舰店 编辑:程序博客网 时间:2024/05/21 17:03

代码如下:

 

INT_PTR AstroDialog::DoModalIndirect()
{
    DLGTEMPLATE dlgTemp;
    memset((void*) &dlgTemp, 0, sizeof(DLGTEMPLATE));

    InitModalIndirect(&dlgTemp);
    return DoModal();
}

另外,客户程序的父窗口创建一条线程,调用静态库中的上述方法创建一个父窗口为NULL的对话框,居然也会把客户程序的窗口Disable掉……

 

但是,在静态库内调用此方法前,执行一次AFX_MANAGE_STATE(AfxGetStaticModuleState());即不会Disable客户程序窗口,可能是在没有转换ModuleState之前,以NULL为父的对话框都会Disable MainWindow(客户程序窗口)吧?转换后,没有父窗口,那就以桌面为父,就不会Disable客户窗口了。

原创粉丝点击