按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
ponents 。面对形形色色的「货」,你的心里一定嘀咕着:怎么用嘛?幸好画面上有
一个【More Info 】按钮,可以提供你比较多的信息。以下我挑三个最简单的ponents
做示范。
Splash screen
所谓Splash Screen,你可以说它是一个「炫耀画面」。玩过微软的Office 吗?每一个
Office 软件一出场,在它做初始化的那段时间里,都会出现一个画面,就是Splash
screen。
Splash Screen 的【More Info 】出现这样的画面:
795
…………………………………………………………Page 858……………………………………………………………
第篇 深入 MFC 程式設計
选按上图下方的〃Splash Screen ponent Specifics〃,你会获得一张使用规格说明,大
意如下:
欲插入splash Screen ponent ,你必须:
1。 打开你希望安插Splash Screen ponent 的那个项目。
2。 选择整合环境中的【Project/Add To Project/ponents and Controls 】菜单项目。
3。 选择〃Developer's Studio ponents〃 资料夹。
4。 选择资料夹中的Splash Screen ponent 并按下【Insert 】钮。
5。 设定必要的Splash Screen 选项然后按下【OK 】钮。
6。 重建(重新编译联结)项目。
如果要把Splash Screen 加到一个以对话窗为主(dialog…based )的程序中,你必须在插
796
…………………………………………………………Page 859……………………………………………………………
16 ponents & ActiveX Controls
第 章 站眾的肩膀 使用
入这个ponent 之后做以下事情:
1。 找到你的InitInstance 函数。
2。 在你调用:
int nResponse = dlg。DoModal();
之前,加上一行:
spl。ShowSplashScreen(FALSE);
增加这一行码,可以确保Splash Screen 在主对话窗被显示之前,会被清除掉。
看来很简单的样子
System Info for About Dlg
看过WordPad 的【About 】对话窗吗:
如果你也想让自己的对话窗有点系统信息的显示能力,可以采用ponent Gallery 提供
的这个System Info for About Dlg ponent 。它的规格说明文字如下:
SysInfo ponent 可以为你的程序的About 对话窗中加上一些系统信息(可用内存
数量以及磁盘剩余空间)。你的程序必须以MFC AppWizard 完成。请参考WordPad 说
797
…………………………………………………………Page 860……………………………………………………………
第篇 深入 MFC 程式設計
明文件以获得更多信息。
这份规格书不够详细。稍后我会在修改程序代码时加上我自己的说明。
Tip of the Day
看过这种画面吗(微软的Office 软件就有):
这就是「每日小秘诀」。ponent Gallery 提供的Tips for the Day ponent 让你很
方便地为自己加上「每日小秘诀」。这个ponent 的使用规格是:
小秘诀文字文件(TIPS。TXT ):
拥有Tips for the Day ponent 的程序将搜寻磁盘中的工作子目录,企图寻找
TIPS。TXT 读取秘诀内容。如果你希望这个秘诀文字文件有不同的名称或是放在不同的位
置,你可以修改CTIP。CPP 中的CTIP 类别构造式。CTIP 是预设的类别名称。
(侯俊杰注:最后这句话是错误的。我使用这个ponent ,接受所有的预设项目,获
得的类别名称却是CTIPDLG ,文件则为TIPDLG。CPP )
■ TIPS。TXT 的格式如下:
1。 文件必须是ASCII 文字,每一个秘诀以一行文字表示。
798
…………………………………………………………Page 861……………………………………………………………
16 ponents & ActiveX Controls
第 章 站眾的肩膀 使用
2。 如果某一行文字以分号(;)开头,表示这是一行说明文字,不生实效。说明文字必
须有自己单独的一行。
3。 空白行会被忽略。
4。 每一个小秘诀最多1000 个字符。
5。 每一行不能够以空白或定位符号(tab )开始。
■ 小秘诀显示次序:
预设情况下,小秘诀的出现次序和它们在文件中的排列次序相同。如果全部都出现过了,
就再循环一遍。如果文件被更改过了,显示次序就会从头开始。
■ 错误情况:
这个组件希望在MFC 程序中被使用。你的程序应该只有一个衍生自CWinApp 的类
别。如果有许多个CWinApp 衍生类别,此组件会选择其中第一个做为实作的对象。其
他的错误情况包括秘诀文字文件不存在,或格式不对等等。
■ 在程序的【Help 】菜单中加上Tip of The Day 项目:
这个组件会修改主框窗口的OnInitMenu 函数,并且在你的【Help 】菜单下加挂一个Tip
of The Day 项目。如果你的程序原本没有【Help 】菜单,此组件就自动为你产生一个。
ponents 实际运用:Test 程序
现在,动手吧。首先利用MFC AppWizard 产生一个项目,就像第4章的Scribble step0 那
样。我把它命名为Test (放在书附光盘的Test。17 子目录中)。然后,不要离
开这个项目,激活ponent Gallery ,进入Developer Studio ponents 资料夹,分别
选择Splash Screen 和System Info for About Dlg 和Tips of the Day 三个组件,分别按
下【Insert 】钮。Splash Screen 和Tips of the Day 组件会要求我们再指定一些消息:
799
…………………………………………………………Page 862……………………………………………………………
第篇 深入 MFC 程式設計
新增文件
这时候Test 项目中的源代码有了一些变动(被ponent Gallery 改变)。被改变
的文件是:
STDAFX。H
RESOURCE H
TEST。H
TEST。CPP
TEST。RC
MAINFRM。H
MAINFRM。CPP
SPLASH。H
SPLASH。CPP
SPLSH16。BMP
TIPDLG。CPP
TIPDLG。H
选按整合环境的【Build / Build Test。Exe 】