什么是电脑窗口 我的电脑窗口属于什么窗口类型( 二 )


这对于模式对话框来说 , 不是问题 , 它的生存时间不长 , 我们一般在栈上创建它们;但无模式对话框则不同 , 它的生存时间更长 , 我们通常在栈上创建它们 , 并且希望它在消失之前能够删除自己 。
因此 , 大多数情况下 , 我们需要在无模式对话框中重载OnOK和OnCancel函数 , 加入DestroyWindows函数来彻底地删除它 。
对话框数据交换和验证机制 在VC中 , 所有的对话框函数都是使用C++代码实现的 , 它并没有采用特殊的资源或“奇特”的宏 , 但却可以很好地实现用户与应用程序之间的交互工作 , 这里的关键就在于对话框应用程序中广泛采用的对话框数据交换和验证机制 。
对话框数据交换(DDX,Dialog Data Exchange)用于初始化对话框中的控件并获取用户的数据输入 , 而对话框数据验证(DDV,Dialog Data Validation)则用于验证对话框中数据输入的有效性 。
MFC在每个对话框类中提供了一个用于重载的虚函数——DoDataExchange来实现对话框数据交换和验证工作 。
对话框数据交换 如果使用DDX机制 , 则通常在OnInitDialog程序或对话框构造函数中设置对话框对象成员变量的初始值 。
在对话框即将显示前 , 应用程序框架的DDX机制将成员变量的值传递给对话框的控件 , 当对话框响应DoModal或Create而被显示时 , 对话框控件将“显示”这些值 。
Cdialog类中的OnInitDialog函数默认时将调用CWnd类的UpdateData成员函数初始化对话框中的控件 。
UpdateData函数的原型如下: BOOL UpdateData( BOOL bSaveAndValidate = TRUE ); 函数参数为TRUE , 即将对话框及其控件中的数据传递给程序代码中的成员变量; 函数参数为FALSE , 即将类中的数据状态传递给对话框及其控件 。
当用户重载DoDataExchange函数时 , 也就为每一个数据成员(控件)指定了一个DDX函数调用 。
对话框数据验证 除了调用DDX参数指定数据交换外 , 用户还可以使用DDV函数进行对话框数据验证 。
在调用控件的DDX函数后 , 必须立即调用该控件的DDV函数 。
大部分DDV函数的原型如下所示 。
DDV_MinMaxCustom(pDX, Data, MinData, MaxData); 其中 , 参数pDX是一个指向CdataExchange对象的指针 , 参数Data中存放着即将被验证的数据 , 后两个参数用于定制数据的范围 。
CdataExchange类 如果仅仅需要使用对话框数据 , 一般没有必要了解数据交换/验证的核心内容 。
但在了解了数据交换和验证的实质后 , 用户就可以编写自己的数据交换和验证代码 , 定制DDX/DDV. 对话框控件 控件是一个可以与其交互以完成输入或操作数据操作的对象 , 它也是一种特殊的窗口 。
控件通常出现在对话框或工具栏中 。
Windows提供了多种多样的控件 , 在MFC应用程序中 , 能够使用的控件通常可以分为三种 。
1)windows公用控件:包括编辑控件、按钮、列表框、组合框、滑动条控件等 , 另外也包括所有者描述的控件 。
2)ActiveX控件:既可以在对话框中使用 , 也可以在HTML网页中使用 。
3)由MFC提供的其他控件类 我们主要介绍第一种类型的控件——Windows公用控件 。
Windows操作系统提供了多种windows公用控件 , 这些控件对象都是可编程的 , Visual C++的对话框编辑器支持将这些控件对象添加到对话框中 。
用户可以在工具箱的对话框编辑器中看到这些windows公用控件 。
MFC为了更好的支持windows公用控件 , 提供了多种控件类 , 每一个控件类封装一种控件 , 并提供相应的成员函数来管理操作控件 。
电脑中窗口是什么4以windows XP为例:
Windows启动成功后的整个画面就是桌面;
桌面上有很多图标 , 这些图标也叫“快捷方式” , 每一个快捷方式表示着一个程序;
位于桌面最下方的是“任务栏” , 任务栏里有“开始”按钮、快速启动区、打开窗口按钮以及指示区 , 指示区里有输入法指示按钮、时间/日期指示按钮等;
窗口又叫视窗是在用户界面上的一个可见的范围 。视窗一般都是长方形的 。它包含着各种控件 , 是用作输入和输出的界面 。虽然视窗一般用于图形用户界面 , 但又有时用于命令行界面的 。而一个使用视窗为主要用户界面的系统则称为视窗系统 。这个想法源于施乐帕洛阿尔托研究中心 。