4

私のアプリには Qt QMenu があり、2 つのレベル (サブメニューの最上位レベル、次にアクションを含む各サブメニュー) で構成され、メニューの背景が灰色、テキストの色が白、および右矢印は白です。サブメニュー項目が強調表示される (マウスオーバー) と、項目の背景は白、テキストは黒になり、右矢印も黒の画像に切り替えたいと思います。これを行うためにCSSスタイルシートを使用しています。ただし、アイテムが選択された状態の代替右矢印画像を設定するための正しい構文が見つからないようです。私のCSSは次のようになります。

QMenu
{
  background-color: rgb( 24, 24, 24 );
  color: white;
}

QMenu::item:selected
{
  background-color: white;
  color: black;
}

QMenu::right-arrow
{
  image: url(Resources/MenuRight.png);
}

上記のコードの後に​​次の追加を試みました(MenuRightSelected.pngは の反転カラー画像ですMenuRight.png)。

QMenu::right-arrow:selected
{
  image: url(Resources/MenuRightSelected.png);
}

QMenu::item::right-arrow:selected
{
  image: url(Resources/MenuRightSelected.png);
}

これらはどちらも、表示される QMenu には影響しません。私が求めていることを実行できるかどうかを誰かが知っていますか?もしそうなら、どうやって?

4

1 に答える 1

1

おそらく、css ファイル内の項目の順序を変更するだけで済みます。Qt は css ファイルを上から解析すると聞いたことがあります。さらに上の項目は、さらに下の項目の動作を上書きします。

于 2012-08-14T16:27:02.837 に答える