• MFC软件工程架构模型-模式窗口-非模式窗口


    1. SDI单文档界面;

      MDI多文档界面.有多个"关闭-最大化-最小化"等这样的窗口嵌套

      基于对话框的软件模型

    2.模式对话框和非模式对话框

    模式对话框:使用DoMoel(),弹出一个新界面,但是主界面不能再操作(栈内申请,临时)

    非模式对话框:弹出新的界面,背后的界面依然可以使用(要使用指针-堆内申请)

      CChatDlg *pDlg = new CChatDlg ;

      pDlg ->Creat(IDD_窗口_ID);//创建一个窗口-加第二个参数GetDesktopWindow()可以让该窗口独立,即在任务栏可以看到的

      pDlg ->showwindow(SW_SHOW);

    3.GetDlgItem(ID_DLG)获取这个窗口的指针,参数可以使按钮控件指针

    SetWindowText("哈哈");设置窗口名字

    SetDlgItemText(IDC_BUTTON,"按钮");

    ShowWindow(SW_HIDE);//隐藏窗口

    4.非模式对话框:一般的点击关闭窗口只是调用EndDialog();类似隐藏,真正关闭摧毁窗口调用onDestory();-DestoryWindoe();

    5.OnOK();0nInitDlg();等函数可以直接添加,不用映射,因为基类定义这些都为虚函数,继承下来再次定义直接覆盖

     6.Creat创建一些控件都是可以的

    m_wnd.Creat("EDit","",***,);//具体入参,查mdn

    7.避免空指针

    判断指针时if(pWnd->GetSafeHwnd()){}

  • 相关阅读:
    大整数模拟
    MSSQL存储过程中获取记录集并循环操作一例
    about协议的妙用
    C#基础概念二十五问
    很完美的JS判断日期函数
    asp.net C# FileUpload 控件如何判断文件名的后缀
    c++中指针学习的两个绝好例子
    ASP.net性能优化总结
    C++指针
    JS中的undefined,null,"",0和false
  • 原文地址:https://www.cnblogs.com/fx427103/p/4033716.html
Copyright © 2020-2023  润新知