2011-09-08 48 views
3

启用/禁用项目的CheckedListBox::Enable()的行为应该类似于GetDlgItem(checkedbox)->EnableWindow(False),对于简单的复选框,我的意思是对于最后一个,项目具有禁用项目的方面,但对于checkedlistbox项目具有一个正常的方面,但我不能选择它。在MFC中的CheckedListBox中禁用项目

所以这是正常的从一个CheckedListBox禁用项目没有灰色方面?

回答

3

尽量避免使用GetDlgItem

CCheckedListBox::Enable()用来启用和禁用基于你进入它的索引列表中的各个复选框。

EnableWindow旨在启用或禁用整个控件。在复选框的情况下,我希望这些类似,但是CCheckedListBox可能会处理它如何管理它的复选框列表项,这与独立复选框控件的行为方式不同。

如果要在更新可视方面时执行与默认行为不同的操作,您可以覆盖DrawItem并使用所有者绘制的样式。

相关问题