10

QComboBox コントロールにリストされているアイテムの高さを上げる方法はありますか?

ここQTDevNetフォーラムで提案されているようにフォローしようとしましたが、うまくいきませんでした

QComboBox QAbstractItemView::item {margin-top: 3px;}

私もこれを試しましたが、まだ結果はありません。

QComboBox QAbstractItemView::item {min-height: 20px;}

スタイルシートレベルでこれを達成することはまったく可能ですか?

4

3 に答える 3

33

あなたのスタイルシートは正しいようだったので、試してみました。問題はQt センターのこの問題に似ているようです:

QCompleterそのモデルにカスタムを設定しますがQAbstractItemDelegate、残念ながら、このカスタム アイテム デリゲートは継承されずQStyledItemDelegate、単純に継承されます (その後、メソッドをQItemDelegateオーバーライドして、選択された状態を表示します)。paint

デフォルトのデリゲートを に置き換えるとQStyledItemDelegate、スタイル シートが機能するはずです。

QStyledItemDelegate* itemDelegate = new QStyledItemDelegate();
combo->setItemDelegate(itemDelegate);

重要:モデルを変更すると、ビューのデリゲートがリセットされるため、 を呼び出した後に上記のメソッドを呼び出す必要がありますsetModel()

于 2012-11-09T18:14:12.303 に答える