1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > MFC 执行顺序总结

MFC 执行顺序总结

时间:2018-11-12 17:13:12

相关推荐

MFC 执行顺序总结

源代码:

CMyTest1App();//首先执行构造函数virtual BOOL InitInstance();//第二步执行初始化函数CMyTest1Dlg dlg;//执行 CMyTest1Dlg 的构造函数

// CMyTest1Dlg 消息处理程序

//zy 当CDiaog子类调用DoModal()函数时,就会触发一系列函数调用,最终调用OnInitDialog()

//zy MFC中, OnInitDialog()函数(对话框初始化),可以把它理解为开始构建对话框的函数

m_pMainWnd = &dlg;

INT_PTR nResponse = dlg.DoModal();//zy 执行 OnInitDialogBOOL CMyTest1Dlg::OnInitDialog()//CMyTest1Dl 消息处理程序

//zy 当CDiaog子类调用DoModal()函数时,就会触发一系列函数调用,最终调用OnInitDialog()

//zy MFC中, OnInitDialog()函数(对话框初始化),可以把它理解为开始构建对话框的函数void CMyTest1Dlg::OnPaint()//zy 这是窗口的重绘回调

/* zy 这是窗口的重绘回调

WM_PAINT消息仅用于以下两种情况:当用户移动窗口或显示窗口,或用户改变窗口的大小,或滚动窗口用户区时, Windows会向窗口函

数发送WM_PAINT消息。当Windows关闭覆盖窗口部分区域的对话框时,以及菜单下拉出来又被释放时,窗口用户区被临时

覆盖,系统会试图恢复显示区域,可能向窗口函数发送一条WM_PAINT消息,要求应用程序刷新其用户

区。

这两种情况下将使MFC调用OnPaint处理函数。也仅有这两种情况,视图对象具有一个OnPaint处理函

数。 */void CMyTest1Dlg::OnSysCommand(UINT nID, LPARAM lParam)

//zy 系统响应函数

/*

对话框的系统菜单命令,包括关闭对话框,最小化最大化,弹出关于对话框,移动对话框等等,实际

上就是向这个对话框发送WM_SYSCOMMAND消息,对话框响应WM_SYSCOMMAND消息,然后根据不同的nID

值判断到底是什么系统命令(关闭对话框,最大最小化还是其他什么),这个OnSysCommand就是用来

响应WM_SYSCOMMAND消息,进行相应处理的*/->其他系统自动生成的函数和变量

//zy 框架调用此函数来改写与确认对话框数据

1.virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持,m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);//zy HICON 是微软平台下的图标句柄。

/* zy

在MFC中, H是句柄的意思, H开头的变量都是句柄变量, Icon是英文单词图标,

所以这个是一个图标的句柄。

类似的还有HWnd,其中Wnd是window是缩写,就是窗口句柄。 *///zy MFC的消息映射

BEGIN_MESSAGE_MAP(CMyTest1Dlg, CDialogEx)

ON_WM_SYSCOMMAND()

ON_WM_PAINT()

ON_WM_QUERYDRAGICON()

ON_BN_CLICKED(IDC_BUTTON1, &CMyTest1Dlg::OnBnClickedButton1)

ON_BN_CLICKED(IDOK, &CMyTest1Dlg::OnBnClickedOk)

ON_BN_CLICKED(IDCANCEL, &CMyTest1Dlg::OnBnClickedCancel)

END_MESSAGE_MAP()

->用户UI界面中生成的指令 以按钮举例:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。