1

私は小さいUiを持っています。

MainWindow があります。一番上は QMenuBar です。

  1. プログラムを実行すると (エラー メッセージは表示されません)、すべて正常に機能します。

  2. ただし、Menu のサブアイテムには、ホバーまたはプレス時のスタイルはありません。

それらは単なるプレーンテキストです。

Qメニューバー:

オプション (QMenu)
--About (QAction)
--Reset (QAction)

メニュー項目のネイティブ OS スタイルを引き継ぐと思っていました。しかし、プレーンな黒のテキスト以外のスタイルはまったくありません。

QActions を SLOT に接続しました。

QAction::connect(ui->actionAbout, SIGNAL(hovered()), this, SLOT(changeAbout())); 

次に、そのSLOTを使用して、次の方法でスタイルを更新しようとしました:

 void MainWindow::changeAbout(){
    ui->menuBarA->setStyleSheet("background-color: rgb(200,0,0);}");
 }

もちろん、これはメニュー全体をスタイルするだけです。しかし、QActionが接続されたことを示しています。

Q: QMenuBar でネイティブ OS スタイルを使用するにはどうすればよいですか?

Q: または、通常のウィンドウのように QActions のスタイルをホバーと押された状態を含めるにはどうすればよいですか?

私はWindows 10を使用しているので、これに何らかの影響があるのでしょうか?

4

1 に答える 1