QComboBox 添加数据(纯文本item、带图标的item、可编辑属性)
QComboBox作为下拉列表框,也是常用的控件之一,最常见的就是win10文件浏览器上的地址输入栏、QQ登录框等。本篇文章将从以下几个方面介绍QComboBox:
1、添加纯文本item
QComboBox添加纯文本列表项可以单个插入(以QString方式)、多个插入(以QStringList方式)、单个指定位置插入、多个指定位置插入,代码如下:
//添加单个item ComboBox->addItem("型号1"); ComboBox->addItem("型号2"); //批量添加item ComboBox->addItems({ "型号3","型号4"}); //指定位置插入单个item(在最后插入) ComboBox->insertItem(ComboBox->count(), "型号5"); //指定位置插入多个item(最前面插入) ComboBox->insertItems(0, { "型号6","型号7" });
2、添加带图标的item
通过调用以下接口可以实现添加带图标的item:
void addItem(const QIcon &icon, const QString &text, const QVariant &userData = QVariant()) void insertItem(int index, const QIcon &icon, const QString &text, const QVariant &userData = QVariant())
或者也可以调用以下接口修改或设置已有item的图标:
void setItemIcon(int index, const QIcon &icon)
代码如下:
//设置图标大小为32*32(默认为16*16) ComboBox->setIconSize(QSize(32, 32)); ComboBox->addItem(QIcon(":/res/mystop.png"), "测试1"); ComboBox->insertItem(ComboBox->count(), QIcon(":/res/NewFile.png"), "测试2"); //或者 ComboBox->setItemIcon(1, QIcon(":/res/normal.png"));
3、开启可编辑
QComboBox可以通过打开可编辑属性,实现与QLineEdit相类似的部分功能
//打开可编辑 ComboBox->setEditable(true);
在打开可编辑属性后,同样可以通过setValidator接口限定其输入格式,通过setCompleter接口设置输入自动补全。

浙公网安备 33010602011771号