不用再为它创建一个新类(从图 2.9 可以看出,它是对话框 CMyDIg 类中的一个 控件,其控件索引号为;IDC_EXIT_BUTION),我们只为它创建一个成员变量 即可
,其过程如下: (1)用鼠标右键单击“退出系统”按钮,出现一个快捷菜单。 (2)在快捷菜单中单击“建方类向导”菜单项,出现用于创建类的对话柜,如 图 2.9 所示。
图 2.9 创建类 在该对话框中,可以对新的对象创建一个新的类并定义一个成员变量,但此 处,我们仅将“退出系统”按钮作为对活框的一个成员,因此,只需要为它定义 一个成员变量即可。 (3)单击 Add VariabIe…按钮,出现成员变量创建对话柜,如图 2.10 所示。
图 2.10 成员变量定义
在为—个对象引入成员变量时,首先应该为它定义一个成员变量名称(此处 我们设 置它的 成员 变 量名称 为“m_EXIT” ),然 而设 置成员 变 只所属 的类 (Category),分为两种:一是控件(Control)类,第二类为值类,即 Value 类,在列 表中系统将会根据对象的类型而自动列出一个供参考选择的
列表内容, 此处选样 Control。另外,还而要设置变量的类型 (VariabIe type),系统也会根据对象的类 型在列表框中列出相应的值,此处选择 CButton。 (4)单击 OK 按钮即完成命令按钮的成员变量设置,随后它会显示在对话框类 的成员变量信息列表中,如图 2.11 所示。
图 2.11 对话框类中的成员变量信息 在一个类中有多少个成员,它便显示多少个成员变量的信息.此处,目前只 有一个成员在对话框中, 因此只有一条信息。 值得注意的是, 成员变量可以删除, 也可以修改并重新进行定义,使成员变量必须是无二义性的,即在一个应用系统 中,一个成员的变量是惟一的,不能出现两个成员定义同一成员变量的现象,否 则会出现错误信息。 2.5.3 为“退出系统 按钮编制事件的过程代码 退出系统”按钮编制事件的过程代码 退出系统 “退出系统” 技钮的作用就是结束应用程序的执行, 关闭应用程序主窗体 (对 话框),因此我们需要给它制作相应的过程代码,其操作步骤如下:
(1) 将图 2.11 的选项卡面图切换到消息映肘(Message Maps)近项卡, 选择对 象索引号 ID 为 IDC_EXIT_BUTTON 的项。 (2)在选项卡中选择单击事件 BN_CLICKED 信息(注意,作为一个命令按 钮,执行事务的方式有单击和双击两种方式,此处选择单击方式,即 BN_CLICKED)。 (3) 单击 Add Functlon…按钮增加该对象的成员函数, 出现成员函数名定义, 如图 2.12 所示。
图 2.12 成员函数名定义 (4)直接接受系统建议的成员函数名即可。 (5)单击 OK 按钮,完成成员函数的增加。 (6)单击 Edit Code…按钮,进入命令按钮的事件过程代码编辑需要的过程 代码即可,“退出系统”命令拉钮的过程代码如下所示:
该代码的编辑实际上是在对话框的过程代码文件中的一个“代
码体”中进行 编辑, VC++中, 在 一个事务的过程编制往往以一个 “代码体” 来进行, 它以 void 为过程标识与声明,该标识说明了对象所在的类和对象的函数名称 CMyDlg:: OnExitButton()。 代码体以 { }
表示。 注意,在为 VC++程序中的成员编制过程代码时,如果用到 VC++的内部函 数,则对于代码符号是有严格要求的,内部函数的函数名不仅需要区分大小写, 而且还必须在西文状态下编写,否则在系统编译时,函数名不会被识别,将出现 编译错误(成员变量名和成员索引编号往往不受此限制,但无论是对于成员变量 名或是成员索引编号, 一经定义, 最好按原定义加以引用, 如原定义为大写字母, 一般应采用原样引用为好)。 编制事件的过程代码之后,可以编译运行工程并检验按钮的功能,它将按设 计过程完成结束程序的事务,即关闭对话框。 2.6 为工程增加两个对话框资源 在前面的过程中,我们已经通过向导为应用程序生成了一个应用程序框架, 并生成了