MFC 模态对话框
Frame 消息:
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
ON_WM_CREATE()
ON_COMMAND(ID_DIALOG_EXEC, &CMainFrame::OnDialogExec)
ON_COMMAND(ID_DIALOG_SHOW, &CMainFrame::OnDialogShow)
ON_COMMAND(ID_DIALOG_32773, &CMainFrame::OnDialog32773)
END_MESSAGE_MAP()
头文件:
private:
CDialog dlg;
OnCreate:
dlg.Create(IDD_DIALOG2); // dlg Create
ON_COMMAND:
// 模态对话框
void CMainFrame::OnDialogExec()
{
// 创建对话框
CDialog dlg_(IDD_DIALOG1);
// 运行
dlg_.DoModal(); // 阻塞
}
// 非模态对话框
void CMainFrame::OnDialogShow()
{
//CDialog dlg; // 用成员变量,不然释放掉
//dlg.Create(IDD_DIALOG2); // 只能创建一次,所以放在在Oncreate里面去
dlg.ShowWindow(SW_SHOWNORMAL);
}
void CMainFrame::OnDialog32773()
{
// 在此添加命令处理程序代码
MyDialog my_dlg;
my_dlg.DoModal();
}
▲ 添加 MFC 类
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了