Я хочу добавить значок с текстом в QComboBox в Qt, как я могу это реализовать?
QComboBox
Вы можете использовать следующие API:
void QComboBox::insertItem ( int index, const QString & text, const QVariant & userData = QVariant() ) void QComboBox::setItemIcon ( int index, const QIcon & icon )
http://doc.qt.io/qt-5/qcombobox.html#insertItem http://doc.qt.io/qt-5/qcombobox.html#setItemIcon
Что касается фрагмента кода, это так просто:
void AddItem(QComboBox* combo, QString itemName, QIcon* icon) { combo->insertItem(0, itemName); combo->setItemIcon(0, *icon); }
Вы можете просто сделать (Qt5), например:
QIcon icon = QIcon::fromTheme("edit-undo"); QString label = "foo"; combo->addItem( icon, label );