私はカスタムモデルを作成し、ビュー(ツリー)とデリゲートを行いました。ツリーのいくつかのセルはコンボボックスです。コンボボックスは、ユーザーが選択したときに期待通りに機能します(カスタムcreateEditor、setEditorData、setModelDataデリゲートメソッド)。私が持っている問題は、セルが選択されている場合にのみ下向き矢印が表示されることです。下向きの矢印が常に表示されるようにします。カスタムツリービューでQComboboxの下向き矢印を表示
どの方法がコントロールの下矢印の表示であるか分かりません。それはモデルデータ(おそらく装飾ロール)から来るのか、それともデリゲートのペイントメソッドなのでしょうか。私はスタイルシートを使用していません。
更新:
私はhere後のことでした解決策が見つかりました。基本的には私のカスタムデリゲートのペイントメソッドで次のように終わった。
QStyleOptionComboBox comboBoxOption;
comboBoxOption.rect = option.rect;
comboBoxOption.state = option.state;
comboBoxOption.state |= QStyle::State_Enabled;
comboBoxOption.editable = false;
comboBoxOption.currentText = index.data(Qt::DisplayRole).toString();
QApplication::style()->drawComplexControl(QStyle::CC_ComboBox, &comboBoxOption, painter);
QApplication::style()->drawControl(QStyle::CE_ComboBoxLabel, &comboBoxOption, painter);
コードを投稿してください。 [mcve]の作成方法を参照してください。 –