基于对话框_消息处理

编译环境

  • Windows 10

  • 基于对话框

MFC建立基础对话框

549050-20190130203424798-539115658.jpg

消息处理

新建【MFC_基于对话框_消息处理】的项目,这个文件的中的类继承自 CWinApp。主要是由InitInstance()函数实现的。


// MFC_基于对话框_消息处理.h: PROJECT_NAME 应用程序的主头文件
//

#pragma once

#ifndef __AFXWIN_H__
    #error "在包含此文件之前包含“stdafx.h”以生成 PCH 文件"
#endif

#include "resource.h"       // 主符号


// CMFC基于对话框消息处理App:
// 有关此类的实现,请参阅 MFC_基于对话框_消息处理.cpp
//

class CMFC基于对话框消息处理App : public CWinApp
{
public:
    CMFC基于对话框消息处理App();

// 重写
public:
    virtual BOOL InitInstance();

// 实现

    DECLARE_MESSAGE_MAP()
};

extern CMFC基于对话框消息处理App theApp;

InitInstance()里声明一个对话框类,【CMFC基于对话框消息处理Dlg】是另一个文件里的类,也就是主要功能代码都是在这个类里面写的。

// CMFC基于对话框消息处理App 初始化

BOOL CMFC基于对话框消息处理App::InitInstance()
{
    CWinApp::InitInstance();
    ...代码省略...
    // 生成界面
    CMFC基于对话框消息处理Dlg dlg;
    m_pMainWnd = &dlg;
    INT_PTR nResponse = dlg.DoModal();
    if (nResponse == IDOK)
    {
        // TODO: 在此放置处理何时用
        //  “确定”来关闭对话框的代码
    }
    else if (nResponse == IDCANCEL)
    {
        // TODO: 在此放置处理何时用
        //  “取消”来关闭对话框的代码
    }
    else if (nResponse == -1)
    {
        TRACE(traceAppMsg, 0, "警告: 对话框创建失败,应用程序将意外终止。\n");
        TRACE(traceAppMsg, 0, "警告: 如果您在对话框上使用 MFC 控件,则无法 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS。\n");
    }

    // 删除上面创建的 shell 管理器。
    if (pShellManager != nullptr)
    {
        delete pShellManager;
    }

转载于:https://www.cnblogs.com/17bdw/p/10339884.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值