2

アイコンを持つアイテムを含む QListWidget があり、アイテムが選択されるとアイコンが強調表示されます。これを防ぐ方法はありますか?スタイルシートは組み込みアプリケーション用であり、それらを含めるとスペースを取りすぎるため、使用できません。ありがとう

4

2 に答える 2

2

「ハイライトアウト」とは、線を選択したときにアイコンの色がうまくレンダリングされないため、アイコンが正しく表示されないことを意味していると思います...

アイテムが選択されているときに別のアイコンを使用することを検討してください。アイコンにモードを指定することで、これを行うことができます。

例 :

QIcon MyIcon(":/images/foo");
MyIcon.addFile(":/images/bar", QSize(...), QIcon::Selected);

QtDesigner で簡単に試して、結果を確認できます...

それが少し役立つことを願っています!

于 2010-01-27T06:54:19.890 に答える
0

確かに、白黒の画面に描画することには課題があります。

機能ではなく、インターフェイスの外観を変更したいだけのようです。この場合、QItemDelegate派生クラス(またはQStyledItemDelegate)はほぼ確実に必要なものです。特に、このdrawDecoration関数はアイコンの描画に使用されているように見えます。スタイルオプションには、選択されているかどうかを含める必要があります。最も簡単な修正は、その関数をオーバーライドし、オプションで選択したフラグをfalseに設定してから、それを親の関数に渡すことです。

于 2010-01-28T19:19:38.557 に答える