• 添加模式对话框


    对话框主要有两类:模式和无模式。

    区别:在清除对话框之前,模式对话框使它所属的窗口(它的所有者)一直处于无效状态;无模式对话框则在其显示时,它的所有者也能被激活。

         显示模式对话框需要调用CDialog::DoModal,而无模式调用CDialog::Create。DoModal要等到对话框被清除后才返回。无模式则一旦建立对话框,Create就返回,因此Create返回时对话框还处于显示状态

        清除无模式对话框要调用DestroyWindow,模式调用EndDialog,禁止对无模式对话框调用CDialog::OnOk或CDialog::OnCancel,因为两者都调用EndDialog

        模式对话框类通常在栈上实例化,所以析构函数是自动实现的,而无模式对话框通过new实例化,所以该对话框对象不会过早被清除。如果要确保清除对话框时删除无模式对话框对象,一种方法是在派生的对话框类中覆盖CDialog::PostNoDestroy 并执行delete this 语句。 

         等等

    现只针对模式对话框的调用:

    1、创建一个对话框模板,描述对话框和其中的控件,即 如果是基于对话框的工程,就插入一个对话框。

    2、构造一个CDialog对象,并封装该对话框模板,即 在新插入的对话框上添加新Class。

    3.调用CDialog::DoModal显示对话框。

    4、关闭对话框,只需在新建窗口调用 OnOK() or OnCancel() 即可。

    例子:

    void CMainDlg::EXXX()     //主窗口语句

    {

        NewDlg  m_newDlg;     //newDlg 为新建窗口类

        m_newDlg.DoMoDal;

    }

  • 相关阅读:
    eventkeyboardmouse
    代理 IP
    网关 192.168.2.1 114.114.114.114 dns查询
    http ssl
    SSDP 抓包
    抓包登录信息提交
    危险的input 微博的过去
    firstChild.nodeValue
    浏览器控制台
    haproxy 中的http请求和https请求
  • 原文地址:https://www.cnblogs.com/LouMengzhao/p/6039675.html
Copyright © 2020-2023  润新知