我在 QComboBox 中有一些项目(由程序添加 - 这是很多添加的项目(大约 1000 个))
所以我使组合框可编辑 -> 然后很容易找到正确的项目。 (例如,如果我想找到名为“My Example”的项目,我会在组合框“MY”中写入,然后我会得到以“MY”开头的项目)
但是当我写一些东西而不是在组合框中时,组合框添加这个项目。
我不想,我只想:
- 只能选择程序添加的 ITEMS
- 阻止添加自定义项
- 当我写了类似“MY”的东西但没有选择项目“My Example”,因为有“My Example”,“My Example2”
然后按下按钮接受我的选择 - 那么如何检查我从程序添加的项目中选择的项目不是由用户编写和完成的?
最佳答案
将这些 QComboBox 属性设置为以下内容:
1. 将setEditable
设置为true
。
2. 将insertPolicy
设置为NoInsert
。
3. 将currentIndex
设置为-1
,使其在开始时为空。
然后处理 currentIndexChanged
信号,只有当列表中的某个项目被选中时才会发送该信号。
关于c++ - qt组合框可读但可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25275599/