首页 > 其他分享 >MFC 模态对话框

MFC 模态对话框

时间:2024-01-27 10:57:29浏览次数:25  
标签:模态 MFC dlg 对话框 CMainFrame COMMAND IDD

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 类


标签:模态,MFC,dlg,对话框,CMainFrame,COMMAND,IDD
From: https://www.cnblogs.com/huvjie/p/17991183

相关文章

  • MFC 右击菜单 右键菜单
    点击鼠标左键会出现弹式菜单:▲弹出菜单//鼠标左键按下voidCMy05_MenuView::OnLButtonDown(UINTnFlags,CPointpoint){//获取主菜单//CMenu*menu=GetMenu();//这个会直接报错//创建菜单项需要新创建一个,不能再视图直接获取框架的那个菜单CM......
  • MFC 根据定时器 ICON 移动 定时器的应用
    ▲会从做向右跑动构造函数:voidCMFCApplication1View::OnDraw(CDC*pDC){CMFCApplication1Doc*pDoc=GetDocument();ASSERT_VALID(pDoc);if(!pDoc)return;//绘制代码pDC->DrawIcon(x1,y1,icon[0]);pDC->DrawIcon(x2,y2+50,......
  • MFC 动态图标切换
    主要是学会获取应用实例,然后是定时器的使用。▲会一直变动,4个轮流滚。标题是属于框架的。头文件:private:HICONicon[4];构造函数:CMainFrame::CMainFrame()noexcept{//加载图标//获取应用程序icon[0]=AfxGetApp()->LoadIconW(IDI_ICON1);......
  • MFC 菜单路由事件,按钮可用不可用
    点击b会切换a可用状态:添加Menu选项a对应IDID_DEMO_A,b对应IDID_DEMO_B。弹式菜单无法编辑ID。▲右键添加事件处理程序▲路由传递路径frame给到view如果view处理好了,就返回给frame;如果没处理的话,view会给这个路由消息给doc,如果doc没有处理,再返回给......
  • MFC 定时器的简单用法
    View下两个消息事件:ON_WM_CREATEON_WM_TIMERBEGIN_MESSAGE_MAP(CMFCApplication1View,CView)//标准打印命令ON_COMMAND(ID_FILE_PRINT,&CView::OnFilePrint)ON_COMMAND(ID_FILE_PRINT_DIRECT,&CView::OnFilePrint)ON_COMMAND(ID_FILE_PRINT_PREVIEW,&a......
  • MFC 插入符输入文字
    在View中,三个消息事件:BEGIN_MESSAGE_MAP(CMFCApplication1View,CView) //标准打印命令 ON_COMMAND(ID_FILE_PRINT,&CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT,&CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_PREVIEW,&CView::OnFilePrintPreview)......
  • 毕设4:导出文件对话框
    一般弹出窗口会用Dialog,但JavaFX的Dialog很难自定义,不如直接弹出一个Stage。分割文件、导出图片和文字三个功能共用一个对话框。于是新增了一个enum区别三个功能。enum可以加方法,还挺好玩的:packagecom.pdfTool.defination;publicenumExportType{SPLIT{@Ove......
  • 一文深度解读多模态大模型视频检索技术的实现与使用
    当视频检索叠上大模型Buff。:::hljs-right万乐乐|技术作者:::视频检索,俗称“找片儿”,即通过输入一段文本,找出最符合该文本描述的视频。随着视频社会化趋势以及各类视频平台的快速兴起与发展,「视频检索」越来越成为用户和视频平台实现高效查找视频、定位目标内容的新需求。......
  • 一文深度解读多模态大模型视频检索技术的实现与使用
    当视频检索叠上大模型Buff。万乐乐|技术作者视频检索,俗称“找片儿”,即通过输入一段文本,找出最符合该文本描述的视频。随着视频社会化趋势以及各类视频平台的快速兴起与发展,「视频检索」越来越成为用户和视频平台实现高效查找视频、定位目标内容的新需求。对于个人用户而言,面对......
  • MFC 简单的绘图用法
    ▲效果在OnDraw函数中://CMFCApplication1View绘图voidCMFCApplication1View::OnDraw(CDC*pDC){CMFCApplication1Doc*pDoc=GetDocument();ASSERT_VALID(pDoc);if(!pDoc)return;/*a)定义画家b)定义画笔(画刷)CPen,CBrush......