MFC RadioButton用法详解

发布时间:2023-03-04 22:20:56

MFC RadioButton用法详解
基础介绍:
radio button通常都是成组使用的,在一组里面是互斥的。 分组的原则是:
1、首先将RadioButton控件定好Tab顺序,具体方法:工具栏格式”—>“Tab键顺序选项选中,然后按照预定的顺序依次点击对话框上面的RadioButton按钮,Tab键顺序设定完成。 2、按照上面的Tab键顺序进行分组,然后设定每组第一个RadioButtonGroup属性为TRUE,分组完成,即从当前设置Group属性为TRUERadioButton开始直到碰到下一个选上Group属性的RadioButton的前一个RadioButton为一个组。
3为单选控件定义Control变量或Value变量,每组只能定义一个,通过设定值来确定哪一RadioButton被选中,其中-1表示该组均不被选中,0表示该组第一个RadioButton被选中,1表示第二个……)。
环境:Visual Studio2010 以对话框为例,工程名称为:RadioButtonInstance。此工程中,共创建四组RadioButton,记着设定Tab键顺序以及为每组第一个RadioButton设置Group属性。初始化对话框为下图:

为该工程中的RadioButton设定下面若干变量:(为单选控件定义Control变量或Value量,每组只能定义一个)
BOOL m_Radio1;//对应于组 1 1 BOOL m_Radio3; //对应于组 2 1 BOOL m_Radio7; //对应于组 3 1 BOOL m_Radio9; //对应于组 4 1 CButton m_RBtGroup1; //对应于组 1 1 CButton m_RBtGroup2; //对应于组 2 1 CButton m_RBtGroup3; //对应于组 3 1 CButton m_RBtGroup4; //对应于组 4 1
添加变量
方法一:利用类向导方法添加变量(略) 方法二:直接编程如下


RadioButtonInstanceDlg.h文件中: 代码部分如下
class CRadioButtonInstanceDlg : public CDialogEx { // 构造
public: CRadioButtonInstanceDlg(CWnd* pParent = NULL; // 标准构造函数 // 对话框数据
enum { IDD = IDD_RADIOBUTTONINSTANCE_DIALOG }; protected: virtual void DoDataExchange(CDataExchange* pDX; // DDX/DDV 支持 // 实现
protected: HICON m_hIcon; // 生成的消息映射函数
virtual BOOL OnInitDialog(; afx_msg void OnSysCommand(UINT nID, LPARAM lParam; afx_msg void OnPaint(; afx_msg HCURSOR OnQueryDragIcon(; DECLARE_MESSAGE_MAP( public: BOOL m_Radio1; BOOL m_Radio3; BOOL m_Radio7; BOOL m_Radio9; CButton m_RBtGroup1; CButton m_RBtGroup2; CButton m_RBtGroup3; CButton m_RBtGroup4; };

MFC RadioButton用法详解

相关推荐