词条 | CButton |
释义 | 简介类CButton提供了对Windows按钮控件的操作。按钮控件是一个小的矩形子窗口,可以通过单击选中(按下)或不选中。按钮可以单独使用,也可以成组使用,它还可以具有文本标题。在用户单击它的时候,按钮通常要改变显示外观。 继承体系CObject └CCmdTarget └CWnd └CButton 详细资料典型的按钮控件有:复选框、单选钮和下压式按钮(push button)。一个CButton对象可以是它们中的一种,这由它的按钮风格和成员函数Create的初始化决定。 此外,类CButtonBitmap是从类CButton继承而来的,不过它支持按钮的图像标签。一个CButtonBitmap对象可以分别为它的四种状态(未按下、按下、获得焦点和禁止存取)设置不同的位图。 既可以从对话框模板中创建一个按钮控件,也可以直接在代码中创建。 无论哪种情况,都要先调用构造函数CButton构造一个CButton对象,然后调用成员函数Create创建Windows按钮控件并应用到CButton对象上。 在一个从类CButton派生出来的类中,构造可以一步完成。程序员可以为这个派生类编写一个构造函数,并在其中调用Create函数。 如果想处理Windows的通知消息,如位图按钮控件发给它的父对象(通常是从CDialog继承来的)的消息,就要在父对象中加入消息映射入口以及处理每个消息的成员函数。 每个消息映射入口的格式如下: ON_Notification(id, memberFxn) 其中id指定了发送通知的控件的子窗口的ID,而memberFxn指定了处理该通知的父对象中的成员函数名。 父对象的函数原型格式如下: afx_msg void memberFxn( ); 可能的消息映射入口如下: 映射入口 何时向父对象发送消息ON_BN_CLICKED 用户单击按钮时ON_BN_DOUBLECLICKED 用户双击按钮时 如果在对话框资源中创建了CButton对象,则在用户关闭该对话框时会自动撤消这个CButton对象。如果在窗口中创建了CButton对象,就可能需要自己撤消它。如果是用new函数在内存的堆中创建该对象的,则在用户关闭该窗口按钮控件时,必须用delete函数撤消它。如果在堆栈中创建了该对象,或者它嵌入在父对话框对象中,系统会自动撤消它。 #include <afxwin.h> 成员列表CButton类的成员 构造函数CButton 构造一个CButton对象 初始化函数Create 创建Windows按钮控件并在CButton对象上应用 CButton::Create 创建一个CButton对象 BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID ); lpszCaption是按钮上显示的文本; dwStyle指定按钮风格,可以是按钮风格与窗口风格的组合,取值有: 窗口风格WS_CHILD 子窗口,必须有 WS_VISIBLE 窗口可见,一般都有 WS_DISABLED 禁用窗口,创建初始状态为灰色不可用的按钮时使用 WS_TABSTOP 可用Tab键选择 WS_GROUP 成组,用于成组的单选按钮中的第一个按钮 按钮风格BS_PUSHBUTTON 下压式按钮,也即普通按钮 BS_AUTORADIOBUTTON 含自动选中状态的单选按钮 BS_RADIOBUTTON 单选按钮,不常用 BS_AUTOCHECKBOX 含自动选中状态的复选按钮 BS_CHECKBOX 复选按钮,不常用 BS_AUTO3STATE 含自动选中状态的三态复选按钮 BS_3STATE 三态复选按钮,不常用 以上风格指定了创建的按钮类型,不能同时使用,但必须有其一。 BS_BITMAP 按钮上将显示位图 BS_DEFPUSHBUTTON 设置为默认按钮,只用于下压式按钮,一个对话框中只能指定一个默认按钮 rect指定按钮的大小和位置; pParentWnd指示拥有按钮的父窗口,不能为NULL; nID指定与按钮关联的ID号,用上一步创建的ID号。 返回值:若成功,返回非0;否则返回0 CButton::DrawItem 重载该函数绘制一个CButton对象,由框架调用该函数 virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct); 参数:lpDrawItemStruct指向包含绘制项信息和要求类型的LPDRAWITEMSTRUCT结构的长指针 CButton::SetCheck 设置或复位单选按钮和复选按钮的选择状态 void SetCheck(int nCheck); 参数:nCheck 指定设置的状态,0为未选择,1为选中,2为不确定 操作GetState 检索按钮控件的选中状态、加亮状态和获得焦点状态 SetState 设置按钮控件的加亮状态 GetCheck 检索按钮控件的选中状态 SetCheck 设置按钮控件的选中状态 GetButtonStyle 检索按钮控件的风格 SetButtonStyle 设置按钮控件的风格 GetIcon 检索此前调用SetIcon设置的图标句柄 SetIcon 指定一个在按钮上显示的图标 GetBitmap 检索此前调用SetBitmap设置的位图的句柄 SetBitmap 设置在按钮上显示的位图 GetCursor 检索此前调用SetCursor设置的光标图像的句柄 SetCursor 设置在按钮上显示的光标图像 可覆盖的函数DrawItem 可以覆盖它来绘制自定义的CButton对象 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。