我想制作一个带有样式(CBS_DROPDOWN
)的组合框作为不可编辑的。我用谷歌搜索了一段时间以及我所见过的建议将组合框样式从CBS_DROPDOWN
更改为CBS_DROPDOWNLIST
。我应该只使用CBS_DROPDOWN
的组合框,这应该是不可编辑的。
有没有办法完成这项工作?如果有的话,任何人都可以帮助我解决这个问题。
答案 0 :(得分:3)
正如您所提到的,可以使用CBS_DROPDOWNLIST
样式。使用此样式是将编辑控件设置为只读的常规方法,因为根本没有编辑字段。
如果您坚持使用CBS_DROPDOWN
样式,则可以使用CComboBox::GetComboBoxInfo获取编辑字段的HWND,然后您可以发送EM_SETREADONLY消息,或者您可以还将其子类化以拦截用户输入。
这是一个简单的答案,不知道你真正想做什么和期望。