当前位置: 首页 > 知识库问答 >
问题:

MFC三态复选框-如何改变状态的顺序?

商和雅
2023-03-14

如何更改三态MFC复选框控件的顺序?

现在,当我单击它时,它的状态顺序如下:BST_INDETERMINATE>BST_UNCHECKED>BST_CHECKED>cycle

但我需要以下内容:BST_INDETERMINATE>BST_CHECKED>BST_UNCHECKED>循环

共有1个答案

张勇
2023-03-14

感谢Adrian Mole的评论提示!

我忘了从BS_AUTO3STATE更改为bs_3state。

工作解决方案

void CTestDialog::OnCheckBoxClicked() 
{   
    int state = ((CButton*)GetDlgItem(IDC_CHECKBOX))->GetCheck();
    if (state == BST_INDETERMINATE)
        ((CButton*)GetDlgItem(IDC_CHECKBOX))->SetCheck(BST_CHECKED);
    else if (state == BST_CHECKED)
        ((CButton*)GetDlgItem(IDC_CHECKBOX))->SetCheck(BST_UNCHECKED);
    else
        ((CButton*)GetDlgItem(IDC_CHECKBOX))->SetCheck(BST_INDETERMINATE);
}
 类似资料:
  • 当html页面上没有任何变量可以切换时,是否有人知道如何使用selenium处理或读出复选框的状态(true/false)。我已经尝试了常用函数。isselected()和。isenabled(),但这些函数只读取不可用的值。 有人知道有没有办法得到这个身份吗?此外,xml的屏幕截图以及它是哪个元素。 如果有人有主意就太好了。我在用Java编程。

  • 如果我打开活动,复选框始终保持选中状态,即使我取消选中它并离开活动或关闭应用程序,在重新启动活动后,它也将保持选中状态。 我已尝试使用以下代码段保存活动的状态。 复选框应始终处于用户离开它的状态(选中或未选中)。

  • 问题内容: 我希望一个事件在选中/未选中复选框时触发客户端: 基本上,我希望页面上的每个复选框都发生这种情况。这种触发点击并检查状态的方法可以吗? 我认为必须有一种更清洁的jQuery方式。有人知道解决方案吗? 问题答案: 绑定到事件而不是。但是,您可能仍然需要检查是否已选中该复选框: 绑定到 事件 而不是事件的主要好处是,并非所有对复选框的单击都会导致其更改状态。如果只想捕获导致复选框更改状态的

  • 问题内容: 我真的可以在Java中使用三态复选框。听起来很简单,但是我只看到过非常丑陋的实现 [注意:链接现在坏了]。 三个单选按钮占用的空间过多,就我而言,这可能会使用户感到困惑。基本上是用于搜索对话框的。我需要true,false或“无关”选项。人们使用其他技术吗? 问题答案: 我找到了一种通过简单地添加侦听器来制作三态复选框的方法: 然后在应用程序代码中,只有一行: 收到所有反馈后,我认为下

  • 问题内容: 我的ListView自定义适配器(及其新实现的viewHolder)存在一些问题。我有一个ListView,每个项目都有一个复选框(这里没有新内容)。问题是,如果列表中有9个以上的项目,则当我选中第一个复选框时,将自动检查第10个复选框(第二个和第11个复选框相同),就像两个项目都有一个监听器一样(我相信情况确实如此)。 我在这里阅读了有关listView的位置问题,视图回收以及Vie

  • 我试图读取一堆格式相同的word docx文件,并将数据提取到数据库中。我对文本没有任何问题,但我在与复选框作斗争。我需要说的是,我是docx4j的新手,但已经在这个问题上挣扎了四天了。我真的很重视一些帮助/帮助/建议。 结果是: 现在,我已经为包含一个难以捉摸的复选框的单元格添加了mainDocumentPart.getXML()的输出。我在那里看不到任何东西告诉我价值。谁能告诉我我错过了什么吗