首页 > 解决方案 > MFC 复选框 GetCheck() bool 以看似相同的属性意外返回,尽管单击了按钮

问题描述

我是 MFC 的新手,无法弄清楚为什么我创建了 2 个复选框,这些复选框具有相同的属性,但只有一个会在单击时返回 true。下面是显示我所拥有的代码片段,但是当我深入研究 GetCheck 来自的 afx 内容时,我无法真正说出它是如何实现检查的。它如何检查复选框或是否有可能我遗漏的设置未在下面列出,这将导致这种类型的行为。在调试期间,我已经验证了程序确实在单击复选框后进入 OnBnClicked1 和 2 并调用。GetCheck() 但对于 1,它总是返回 false,对于 2,它总是返回 true。

void Dialoge1Dlg::OnBnCLickedChkBox1()
{
  bool check = mctrlChkbox1.GetCheck(); //always comes back false even after checked
 // more stufff 
}

void Dialoge1Dlg::OnBnCLickedChkBox2()
{
  bool check = mctrlChkbox2.GetCheck(); //always comes back true after checked
 // more stufff 
}

//over in the .h file 
CButtom mCtrlChkbox1;
CButtom mCtrlChkbox2;

properties : Auto true //我只列出了true属性来缩短列表 all Visible true //其他都设置为false Tabstop true

BN_CLICKED : OnBnCLickedChkBox1 BN_CLICKED : OnBnCLickedChkBox2

标签: mfc

解决方案


推荐阅读