⭐ QComboBox 方法大全
1. addItem()
用途:向下拉列表添加一个文本项(可附加用户数据)。
示例
comboBox->addItem("苹果");
comboBox->addItem("香蕉", 123); // 带用户数据
2. addItems()
用途:一次性添加多个字符串项。
示例
comboBox->addItems(QStringList() << "红色" << "绿色" << "蓝色");
3. insertItem()
用途:在指定索引插入单个项。
示例
comboBox->insertItem(1, "插入项");
4. insertItems()
用途:在指定位置插入多个项。
示例
comboBox->insertItems(0, QStringList() << "前置A" << "前置B");
5. removeItem()
用途:删除指定索引的项。
示例
comboBox->removeItem(2);
6. clear()
用途:清空所有项。
示例
comboBox->clear();
7. count()
用途:获取当前项的总数。
示例
int total = comboBox->count();
8. currentIndex()
用途:获取当前选中项的索引。
示例
int idx = comboBox->currentIndex();
9. setCurrentIndex()
用途:设置当前选中项。
示例
comboBox->setCurrentIndex(1);
10. currentText()
用途:获取当前选中的文本。
示例
QString text = comboBox->currentText();
11. setCurrentText()
用途:通过文本来选择项(匹配第一个相同文本的项)。
示例
comboBox->setCurrentText("绿色");
12. itemText()
用途:获取指定索引的文本。
示例
QString s = comboBox->itemText(0);
13. setItemText()
用途:修改指定项的文本。
示例
comboBox->setItemText(0, "新名称");
14. itemData()
用途:获取项的用户数据(QVariant)。
示例
QVariant v = comboBox->itemData(0);
15. setItemData()
用途:设置项的用户数据。
示例
comboBox->setItemData(0, 999);
16. editable()
用途:检查是否可编辑(用户可键入文本)。
示例
bool canEdit = comboBox->isEditable();
17. setEditable()
用途:设置下拉框的文本是否可编辑。
示例
comboBox->setEditable(true);
18. lineEdit()
用途:返回内部的 QLineEdit(当 editable 时有效)。
示例
comboBox->setEditable(true);
comboBox->lineEdit()->setPlaceholderText("请输入内容");
19. showPopup()
用途:手动展开下拉框。
示例
comboBox->showPopup();
20. hidePopup()
用途:手动收起下拉框。
示例
comboBox->hidePopup();
21. view()
用途:获得内部 QListView(可用来自定义样式、滚动等)。
示例
QListView* v = comboBox->view();
v->setSpacing(5);
22. setMaxVisibleItems()
用途:设置弹出列表最多显示多少项(超出则滚动)。
示例
comboBox->setMaxVisibleItems(10);
23. duplicatesEnabled()
用途:是否允许重复项。
示例
bool yes = comboBox->duplicatesEnabled();
24. setDuplicatesEnabled()
用途:设置是否允许重复项。
示例
comboBox->setDuplicatesEnabled(false);