QComboboxウィジェットの左側にアイコンを設定したい。最初にアイテムを挿入し、次に挿入されたアイテムのアイコンを設定してから、この新しく挿入されたアイテムを選択できることを知っています。ただし、特別な理由により、ドロップダウンリストに新しいアイテムを挿入せずにそれを実行したいと思います。WindowsのComboBoxコントロールでは、-1のインデックスを使用して編集ボックスのアイコンを変更できます。QComboboxでそれを実現する方法がわかりません。
コメントありがとうございます!
自分で試したことはありませんが、ここにアイデアがあります。
QComboBox は Qt のモデル/ビュー フレームワークに基づいているため、項目はでアクセスできるQStandardItemModelQComboBox::model()
に含まれています。
手順は次のとおりです。
QStandardItem
setIcon()
で andsetText()
を使用する (または適切な ctor を使用する)例:
QStandardItem* item = new QStandardItem(theIcon, theText);
[...]
QStandardItemModel* comboModel = qobject_cast<QStandardItemModel*>(theCombo->model());
comboModel->appendRow(item);