千家信息网

怎样模拟doModal对话框

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,今天就跟大家聊聊有关怎样模拟doModal对话框,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在DLL中封装了一个非模态对话框窗口,但是在运行
千家信息网最后更新 2025年01月24日怎样模拟doModal对话框

今天就跟大家聊聊有关怎样模拟doModal对话框,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

在DLL中封装了一个非模态对话框窗口,但是在运行时希望能阻塞主线程,但是不阻塞界面

void DoEvent();DWORD WINAPI doModal(LPVOID p){   INT  i = 0;   while (1)   {         i++;        Sleep(30);        if (i == 83)break;        static MSG msg;        if (::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE))        {           AfxGetApp()->PumpMessage();        }    }    return 0;}void DoEvent(CScale3DCMessageBoxDlg &dlg){    MSG msg;    //取消息,检索应用程序的消息队列,PM_REMOVE取过之后从消息队列中移除     if (::PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))       {        //发消息     ::TranslateMessage(&msg);   ::DispatchMessage(&msg);        dlg.SendMessage(msg.message, msg.wParam, msg.lParam);    }}extern "C"  __declspec(dllexport) VOID  __stdcall  CreateMsgBox(CWnd * parent){        CScale3DCMessageBoxDlg  pDlgMsgBox;        pDlgMsgBox.Create(IDD_DIALOG1, parent);        pDlgMsgBox.ShowWindow(SW_SHOW);        HANDLE hThread[1];        DWORD  threadId;        hThread[0] = CreateThread(NULL, 0, doModal, 0, 0, &threadId);        DWORD dwRet;                do        {                dwRet = ::MsgWaitForMultipleObjects(1, hThread, FALSE,                           INFINITE, QS_ALLINPUT);                if (dwRet != WAIT_OBJECT_0)                {                        pDlgMsgBox.UpdateWindow();                        DoEvent(pDlgMsgBox);                }        } while ((dwRet != WAIT_OBJECT_0) && (dwRet != WAIT_FAILED));}

看完上述内容,你们对怎样模拟doModal对话框有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

对话框 对话 内容 消息 队列 阻塞 应用程序 是在 更多 模态 界面 知识 程序 篇文章 线程 行业 资讯 资讯频道 频道 进一 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 手机热点服务器名称怎么看 金蝶的加密服务器怎么找视频 武汉网络安全监察处 软件开发公司人力资源文案 香港服务器 价格 rust怎么一聊天就退出服务器 某软件开发公司因业务发展需要 江苏省网络安全短信 杭州软件开发基本工资 张店客户管理软件开发公司 安徽红嘴鸥网络技术公司 高端服务器处理器进口 济南浪潮存储服务器零售商 怎样可以修改数据库后直接查询 软件开发业绩提成方案 陕西网络安全职业技术学院 csgo服务器给管理员 邮件常见数据库有哪些 棋牌游戏软件开发厂家 怎么区分网站进入数据库 奕斯伟2022软件开发工程师 共享软件开发方案 软件开发属于元宇宙吗 在手机上怎样联接服务器 五大道派出所开展网络安全宣传 网络技术方面的初中基本知识 网络安全顾问是做什么工作 软件开发技能视频 收入支出明细表数据库 app要租服务器吗
0