新闻资讯

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻资讯列表

CListBox无法用ModifyStyle修改LBS_MULTIPLESEL属性

发布时间:2023-08-08 07:56:05

CListBox没法用ModifyStyle修改LBS_MULTIPLESEL属性

CListBox控件的ModifyStyle函数没法直接修改LBS_MULTIPLESEL属性。如果要添加或删除LBS_MULTIPLESEL属性,需要使用ModifyStyleEx函数来修改扩大样式。
以下是一个示例代码:
```cpp
CListBox* pListBox = (CListBox*)GetDlgItem(IDC_LISTBOX); // 获得CListBox控件的指针
DWORD dwStyle = pListBox->GetStyle(); // 获得当前控件样式
DWORD dwExStyle = pListBox->GetExtendedStyle(); // 获得当前控件的扩大样式
// 添加LBS_MULTIPLESEL属性
dwExStyle |= LBS_MULTIPLESEL;
pListBox->ModifyStyleEx(0, LBS_MULTIPLESEL);
// 删除LBS_MULTIPLESEL属性
dwExStyle &= ~LBS_MULTIPLESEL;
pListBox->ModifyStyleEx(LBS_MULTIPLESEL, 0);
```
注意,修改控件样式后,可能需要调用Invalidate函数来刷新控件的显示。