MFC checkbox使用方法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

MFC中复选框checkbox控件,至少有三种方法对其进行操作,他们是利用Cbutton成员函数GetCheck和SetCheck,第二种是利用CWnd成员函数IsDlgButtonChecked,最后就是把checkbox复选框控件与BOOL型变量相关联。

一、用CButton成员函数
MFC中复选框CheckBox的基类是CButton。那么就可以用GetDlgItem来获取复选框的指针,再用Cbutton成员函数GetCheck和SetCheck来获取和设置选中状态。
得到复选框状态的函数:
CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK_MIXI);
int state = pBtn->GetCheck();
当state == 0时表示该复选框没有被选中;
当state == 1时表示该复选框被选中;
当state == 2时表示不确定(applies only if the button has the BS_3STATE or BS_AUTO3STATE style);
设置复选框状态的函数:
CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK_MIXI);
pBtn->SetCheck(1);
SetCheck(1)表示设置复选框为“选中”状态;
SetCheck(0)表示设置复选框为“未选中”状态;
SetCheck(2)设置复选框为不确定状态(This value can be used only if the button has the BS_3STATE or BS_AUTO3STATE style.);
二、用CWnd成员函数
CButton是从CWnd继承来,那么就可以用IsDlgButtonChecked来获取和设置check box的状态。另外MSDN上海说明IsDlgButtonChecked还可以用于单选框Radio button。
UINT IsDlgButtonChecked( int nIDButton ) const;
nIDButton为控件ID
函数功能:
该函数可以确定某个按钮控制是否有选中标志,或者三态按钮控制是否为灰色的、选中的、或两者都不是。
返回值:
使用BS_AUTOCHECKBOX、BS_AUTORADIOBUTTON、BS_AUTO3STATE、BS_CHECKBOX、BS_RADIOBUTION或BS_3STATE样式创建的按钮的返回值可以是如下值之一:
BST_CHECKED:表示按钮被选中。
BST_INDETERMINATE:表示按钮是灰色的,即为不确定状态(只有具有BS_3STATE或BS_AUTO3STATE样式的按钮才使用该值)。
BST_UNCHECKED:表示该按钮未选中(unckecked)。如果该按钮用其他任何样式,那么返回值为零。
if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK1 ) )
{
//IDC_CHECK1是CheckBox控件。
//check box 被选中执行相关动作
}
三、关联BOOL型成员变量
复选框CheckBox控件添加一个控件类型的BOOL值变量如:BOOL m_delete;
void calcuArea::DoDataExchange (CDataExchange *pDX)
{
//此代码利用类向导可以自动生成
CAcUiDialog::DoDataExchange (pDX) ;
DDX_Check(pDX, IDC_CHECK1, m_delete);
}
MFC中单选框和复选框控件的使用 单选框 Radio Button 复选框 CheckBox 功能:通过点击单选框或复选框按钮获取到单选框和复选框选中的内容 第一步,在VS2019中新建一个MFC项目; 第二步,打开资源视图,双击打开窗口,在工具栏中选择Radio Button控件和CheckBox控件,拖放到窗口上,设置名称; 第三步,把第一个单选框和第一个复选框的组设置为TRUE; 第四步,给第一个单选框添加变量,变量类型为值类型(简单),变量名称为m_radio; 第五步,给第所有的复选框添加变量,变量类型为值类型(简单),变量 阅读详情

相关推荐

MFC开发(6)】复选框按钮控件Check Box

MFC开发(6)】复选框按钮控件Check Box

Demo.demo的博客 3122

VC下练习Check Box用法的小例子

checkBox使用应该说在各种编程语言中都是基础的,在VC++中也不例外,对于高手来说,这个代码不用看了,主要是写给新手看的,如图所示的窗口中,有几个CheckBox复选框供选择,程序会判断出用户所选择的复选框的值,并以MessageBox的方式返回给用户结果。 运行环境:Windows/Visual C/C++

MFC 修改CheckBox的文本颜色方法

设置主题 这一步是必须的,不可省略。 BOOL CMFCApplication1Dlg::OnInitDialog() { CDialogEx::OnInitDialog(); // 设置此对话框的图标。 当应用程序主窗口不是对话框时,框架将自动 // 执行此操作 SetIcon(m_hIcon, TRUE); // 设置大图标 SetIcon(m_hIcon, FALSE); // 设置小图标 // TODO: 在此添加额外的初始化代码 // 设置主题 HWND

Kim的博客 2225

MFC Check Box控件完全指南:属性设置、样式定制与高级应用

本文详细介绍了MFCCheckBox控件的使用方法,主要包括三方面内容:基础使用(控件绑定、状态设置和事件响应)、样式定制(自定义绘制和外观修改)以及高级功能(动态创建、分组管理和三态应用)。通过代码示例展示了如何实现控件初始化、状态管理、消息处理等核心功能,并提供了自定义样式、动态布局等实用技巧。文章还包含保存设置到注册表、列表控件结合等实际应用案例,帮助开发者掌握从基本操作到高级定制的完整CheckBox开发技术,可用于构建更专业的用户界面。

专注现代C++实战,从核心语法到高性能编程,助力开发者深入掌握系统级编程精髓。 617

MFC CheckBox使用

1.获得checkBox的状态。 (1)利用函数IsDlgButtonChecked  函数功能:该函数可以确定某个按钮控制是否有选中标志,或者三态按钮控制是否为灰色的、选中的、或两者都不是。 函数原型:UINT IsDlgButtonChecked(HWND hDlg,Int nlDBUtton); 例如:int index=IsDlgButtonChecked(IDC_CheckBox

gll028的专栏 2109

MFC控件--CheckBox

1.CheckBox 在资源视图--Dialog:某个对话框界面中,添加了一个CheckBox控件; 右击控件--添加变量--变量类型CButton:m_check; 1.设置控件被选中:m_check.SetCheck(1); 2.获取控件是否被选中:m_check.GetCheck(); 3.控件初始化后,禁止用户使用(即:变成灰色):控件的属性--Disable--True

乐观开朗,积极向上 1330

MFC Checkbox 使用方法

请问MFCCHECKBOX用法(2009-02-05 13:49:50) 勾选时...做某种算法 不勾选时 做另一种算法 if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK1 ) ) { // 勾选 } else { } IDC_CHECK1是CheckBox控件。   函数功能:该函数可以确定某个按钮控制是否

skyfyy的专栏 2354

MFC ListCtrl使用虚拟列表+CheckBox的解决方法

使用mfc久了,发现虚拟列表真的很好用,尤其是刷新大量数据时或对时间要求比较严格的地方时,但在使用CheckBox时,虚拟列表和ListCtrl默认一行只能在行首加入CheckBox,无法在其他列加入。遇到这种情况,网上的解决方案一般分两种:1.使用自绘,自己绘制CheckBox。2.使用一些开源的代码,如XListCtrl等。3.在虚拟列表中下加入图片(图片为勾选和不勾选的两种ico图片...

动感小麦兜的博客 2162

group mfc 复选框_MFC中RadioButton、CheckBox设置,以及设置获取选中状态方法

转自:https://blog.csdn.net/jiangqin115/article/details/45176961?locationNum=6&fps=1版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiangqin115/article/details/45176961基础介绍:radio button通常都是成组使用的,在一组...

weixin_33054847的博客 1993

MFC中RadioButton、CheckBox设置,以及设置获取选中状态方法

转自:https://blog.csdn.net/jiangqin115/article/details/45176961?locationNum=6&fps=1 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiangqin115/article/details/45176961 基础介绍: radio button通常都是成组使...

qq_16334327的博客 2万+

VC++学习-控件篇(复选框CheckBox使用

编程环境 VS2013,MFC MFC中复选框checkbox控件,至少有三种方法对其进行操作,他们是利用Cbutton成员函数GetCheck和SetCheck,第二种是利用CWnd成员函数IsDlgButtonChecked,最后就是把checkbox复选框控件与BOOL型变量相关联。 一、用CButton成员函数 MFC中复选框CheckBox的基类是CButton。那么就可以用Get...

深蓝 1万+

MFC基础】03复选框Check Box

MFC中复选框checkbox控件,至少有三种方法对其进行操作 第一种是利用Cbutton成员函数GetCheck和SetCheck, 第二种是利用CWnd成员函数IsDlgButtonChecked, 第三种是把checkbox复选框控件与BOOL型变量相关联。 一、用CButton成员函数 MFC中复选框CheckBox的基类是CButton。那么就可以用GetDlgItem来获取复选框的指针,再用Cbutton成员函数GetCheck和SetCheck来获取和设置选中状态。 获取复选框状态:

weixin_43573071的博客 5916

MFC CTreeCtrl 在OnInitDialog里无法勾选Checkbox以及设置隐藏根节点的Checkbox

一个奇葩的问题,很早就遇到了,因为小华哥遇到了类似的问题,我怀疑是同一个原因所致,一试果然~~~ 小华哥说,想实现一个这样的效果:如下图所示,根节点的checkbox隐藏掉。 我找了一下方法,只要设置一句代码就可以了:m_wndTree-> SetItemState(hRoot2, INDEXTOSTATEIMAGEMASK(0),   TVIS_STATEIMAGEM

风迦叶的部落格 2795

MFC复选框CheckBox使用

MFC中复选框checkbox控件,至少有三种方法对其进行操作,第一种是利用Cbutton成员函数GetCheck和SetCheck,第二种是利用CWnd成员函数IsDlgButtonChecked,最后就是把checkbox复选框控件与BOOL型变量相关联。 一、用CButton成员函数 MFC中复选框CheckBox的基类是CButton。那么就可以用GetDlgItem来获取复选框的指针

dytdyt2010的专栏 2万+

VS2013 MFC checkbox 控件默认选中

方法一:      设该CheckBox控件ID为IDC_CHECK1,      在Dialog类的OnInitDialog函数中//TODO处添加代码:      ((CButton*)GetDlgItem(IDC_CHECK1))->SetCheck(BST_CHECKED);      方法二:      为该控件添加BOOL值型控件成员变量m_Check1,在Dialog类的构

自晓的专栏 9821

MFC 利用checkbox 做成切换开关按钮

我们在做MFC程序时候经常会一个切换式的按钮,之前我的做法是利用buttion类的一个SetState()函数,但是返现效果不佳。而且容易出现点1按钮,焦点跑到另外一个按钮上去了  。后来看到别人一个程序。我发现他的切换效果做的很好 ,经过看代码发现,他用的控件根本不是buttion控件而是check box 控件。我就很奇怪,如何将check box变成了一个按钮的,经查看代码发现,原来是他将控

woaitingting1985的博客 2611

MFC 利用checkbox 做成切换开关按钮

VC实现切换开关

wuan584974722的专栏 1万+

MFCCheckBox的状态判断

https://blog.csdn.net/tianxia_rwx/article/details/53057729   MFC中复选框Checkbox控件,查找到有四种方法可对其进行操作。   1,利用CButton成员函数GetCheck和SetCheck。   2,利用CWnd成员函数IsDlgButtonCh...

草帽小子的博客 9332
上一篇: MFC radio控件的使用方法
下一篇: \r \n \r\n的区别
dumeichen
博客等级 码龄12年 55粉丝 475原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值