设为首页 加入收藏

TOP

对话方块(一)
2010-12-30 21:13:56 】 浏览:57510
Tags:对话 方块
如果有很多输入超出了功能表可以处理的程度,那么我们可以使用对话方块来取得输入资讯。程式写作者可以通过在某选项後面加上省略号(…)来表示该功能表项将启动一个对话方块。

对话方块的一般形式是包含多种子视窗控制项的弹出式视窗,这些控制项的大小和位置在程式资源描述档的「对话方块模板」中指定。虽然程式写作者能够「手工」定义对话方块模板,但是现在通常是在Visual C++(www.cppentry.com) Developer Studio中以交谈式操作的方式设计的,然後由Developer Studio建立对话方块模板。

当程式呼叫依据模板建立的对话方块时,Microsoft Windows 98负责建立弹出式对话方块视窗和子视窗控制项,并提供处理对话方块讯息(包括所有键盘和滑鼠输入)的视窗讯息处理程式。有时候称呼完成这些功能的Windows内部程式码为「对话方块管理器」。

Windows的内部对话方块视窗讯息处理程式所处理的许多讯息也传递给您自己程式中的函式,这个函式即是所谓的「对话方块程序」或者「对话程序」。对话程序与普通的视窗讯息处理程式类似,但是也存在著一些重要区别。一般来说,除了在建立对话方块时初始化子视窗控制项,处理来自子视窗控制项的讯息以及结束对话方块之外,程式写作者不需要再给对话方块程序增加其他功能。对话程序通常不处理WM_PAINT讯息,也不直接处理键盘和滑鼠输入。

对话方块这个主题的含义太广了,因为它还包含子视窗控制项的使用。不过,我们已经在第九章研究了子视窗控制项。当您在对话方块中使用子视窗控制项时,第九章所提到的许多工作都可以由Windows的对话方块管理器来完成。尤其是,在程式COLORS1中遇到在卷动列之间切换输入焦点的问题也不会在对话方块中出现。Windows会处理对话方块中的控制项之间切换输入焦点所必需完成的全部工作。

不过,在程式中添加对话方块要比添加图示或者功能表更麻烦一些。我们将从一个简单的对话方块开始,让您对各部分之间的相互联系有所了解。

模态对话方块
 

对话方块分为两类:「模态的」和「非模态的」,其中模态对话方块最为普遍。当您的程式显示一个模态对话方块时,使用者不能在对话方块与同一个程式中的另一个视窗之间进行切换,使用者必须主动结束该对话方块,这藉由通过按一下「OK」或者「Cancel」键来完成。不过,在显示模态对话方块时,使用者通常可以从目前的程式切换到

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/82/82
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇剪贴簿 下一篇功能表及其他资源

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目