当前位置: 首页 > 图文教程 > 开发语言 > VC++ > VC++:小编浅谈静态控件

VC++
自绘按钮补遗
按钮控件的使用
自绘按钮的实现
图形超链接类
VC中多语言菜单的实现
一种漂亮的自绘菜单
CGfxOutBarCtrl之提升篇
颜色选择组合框
如何去掉浮动工具条中的“关闭”按钮
设计XP风格的按钮
实现类似Excel和Visual C++里文件夹式样的标签控制(三)
实现类似Excel和Visual C++里文件夹式样的标签控制(二)
实现类似Excel和Visual C++里文件夹式样的标签控制(一)
CGfxOutBarCtrl之BUG篇
如何实现Office式样的扁平组合框
CButtonST类公共接口函数
CButtonST使用技巧(三)
CButtonST使用技巧(二)
CButtonST使用技巧(一)
CButtonST使用技巧: CButtonST简介

VC++:小编浅谈静态控件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-12-26   浏览: 378 ::
收藏到网摘: n/a

按钮主要是指命令按钮、选择框和单选按钮。后二者实际上是一种特殊的按钮,它们有选择和未选择状态。当一个选择框处于选择状态时,在小方框内会出现一个“√”,当单选按钮处于选择状态时,会在圆圈中显示一个黑色实心圆。此外,检查框还有一种不确定状态,这时检查框呈灰色显示,不能接受用户的输入,以表明控件是无效的或无意义的。 

 

 FCCButton类封装了按钮控件。CButton类的成员函数Create负责创建按钮控件,该函数的声明为 

 

 BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID ); 

 

一般还要为控件指定WS_CHILDWS_VISIBLEWS_TABSTOP窗口风格,WS_TABSTOP使控件具有Tabstop属性。创建一个普通按钮应指定的风格为WS_CHILD|WS_VISIBLE|WS_TABSTOP。创建一个普通检查框应指定风格WS_CHILD|WS_VISIBLE|WS_TABSTOP| BS_AUTOCHECKBOX。创建组中第一个单选按钮应指定风格WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_GROUP| BS_AUTORADIOBUTTON,组中其它单选按钮应指定风格则不应该包括WS_TABSTOPWS_GROUP。 

 

  对于用对话框模板编辑器创建的按钮控件,可以在控件的属性对话框中指定。例如,在命令按钮的属性对话框中选择Default button,相当于指定了BS_DEFPUSHBUTTON。 

 

 可以使用下列的一些与按钮控件有关的CWnd成员函数来设置或查询按钮的状态。用这些函数的好处在于不必构建按钮控件对象,只要知道按钮的ID,就可以直接设置或查询按钮。 

 

  void CheckDlgButton( int nIDButton, UINT nCheck );

用来设置按钮的选择状态。参数nIDButton指定了按钮的IDnCheck的值0表示按钮未被选择,1表示按钮被选择,2表示按钮处于不确定状态。 

 

  void CheckRadioButton( int nIDFirstButton, int nIDLastButton, int nIDCheckButton );

用来选择组中的一个单选按钮。参数nIDFirstButton指定了组中第一个按钮的IDnIDLastButton指定了组中最后一个按钮的IDnIDCheckButton指定了要选择的按钮的ID。 

 

  int GetCheckedRadioButton( int nIDFirstButton, int nIDLastButton );

该函数用来获得一组单选按钮中被选中按钮的ID。参数nIDFirstButton说明了组中第一个按钮的IDnIDLastButton说明了组中最后一个按钮的ID。 

 

  UINT IsDlgButtonChecked( int nIDButton ) const;

返回检查框或单选按钮的选择状态。返回值0表示按钮未被选择,1表示按钮被选择,2表示按钮处于不确定状态(仅用于检查框)。 

 

  可以调用CWnd成员函数GetWindowTextGetWindowTextLengthSetWindowText来查询或设置按钮中显示的正文. 

 

  MFC还提供了CButton的派生类CBitmapButton。利用该类可以创建一个拥有四幅位图的命令按钮,按钮在不同状态时会显示不同的位图,这样可以使界面显得生动活泼。