【问题标题】:Visual C++: checked list box doesn't clearVisual C++:选中的列表框不清除
【发布时间】:2013-06-28 17:22:03
【问题描述】:

我正在编写一个非常简单的 VCpp 程序。在 form1 上,我放了一个“checkedListBox1”,其中 我可以做出选择。

每次我按下“botton1”时,这些选择都应该被清除。

所以在我编写代码时,我在按钮上单击两次以进入事件。 第一条指令,现在并不重要,工作正常。

然后我写:

checkedListBox1->ClearSelected(); 

智能感知说,此方法应清除所有选择,但事实并非如此。 当我运行程序时,在框中选择了 4 种可能性中的 1 种,然后 点击botton1,选择仍然保留。

我肯定忘记了什么。谁能给我个主意?

我正在使用 Visual C++ 2008,Express 版本。

感谢和问候

Uwe_98

【问题讨论】:

    标签: visual-c++ checkedlistbox


    【解决方案1】:

    选中的项目与选中的项目不同。选中表示您在项目上有一个(通常为蓝色)突出显示,选中表示复选框已勾选。

    要清除所有复选标记,您必须使用SetItemChecked 方法而不是ClearSelected,它实际上是从ListBox 继承的,与复选框无关:

    for (int i = 0; i < checkedListBox1->Items->Count; ++i)
    {
        checkedListBox1->SetItemChecked(i, false);
    }
    

    【讨论】:

    • 非常感谢!这很好用。现在我发现了另一个问题:该框允许我检查各种项目。是否有一个属性允许我只检查一个项目?提前致谢。
    • @Uwe_98 好的,但不要将这些问题串在原始问题上,最好接受此答案并针对您的新问题发布一个单独的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多