📄 untitled-14.txt
字号:
大多数Hello的功能来自Windows。例如,Windows绘制窗口的外貌,或称为非用户区
域:标题栏、标题栏上的按钮以及窗口的边框。您的责任就是创建窗口并处理WM_PAINT
消息,该消息指出窗口内部(客户区)是全部还是部分需要更新。请阅读程序源代码,看一下
Hello是如何工作的。
1.3.1应用程序对象
MFC应用程序的核心就是基于CWinApp类的应用程序对象。CWinApp提供了消息循
环来检索消息并将消息调度给应用程序的窗口。它还包括可被覆盖的、用来自定义应用程
序行为的主要虚函数。一旦包含头文件AfXwin.h,就可以将CWinApp以及其他MFC类引人
应用程序中。一个MFC应用程序可以有且仅有一个应用程序对象,此对象必须声明为在全
局范围内有效,以便它在程序开始时即在内存中被实例化。
Hello的应用程序类被命名为CMyApp。它在Hello.cpp中用如下语句进行了实例化:
CMyAPP nyAPP;
CMyApp的类声明在H,11。h中显示:
CICSS C地的p:p:bliC CWi*邮p
5
publ IC:
virtual B00L Initlnstance();
Z;
CMyApp没有声明任何数据成员,只是覆盖了一个从CWinApp类中继承来的函数。在
应用程序的生存期内Initlnstance的调用比较早,是在应用程序开始运行以后而窗口创建之
前。事实上,除非Initlnstance创建一个窗口,否则应用程序是不会有窗口的。这正是为什么
即使最小的 MFC应用程序也必须从 CWinApp派生出一个类并覆盖 CWinApp:: Initlnstance的
原因。
Inltlnstance &数
CWinApp::Iflitlllst。Ce是一个虚函数,其默认操作仅包含·条语句:
return TRUE;
Initlnstance的目的是为应用程序提供一个自身初始化的机会。由Initlnstance返回的值
决定了框架结构接下来要执行的内容。从Initlnstance返回FAInE将关闭应用程序。如果初
始化正常,Initlnstance将返回TRUE以便允许程序继续进行。Initlnstance是用来执行程序每
次开始时都需要进行的初始化工作的最好地方。至少,这意味着创建在屏幕上表现应用程
序的窗口。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -