1

モチーフ スタイル (Qt 5.3) を使用した 2 つのサブ メニューを持つ QMenuBar があります。このシナリオに従うと、QMenuBar の周りに黒い境界線が表示されます (以下のコード例)。

  1. サブメニュー「Foo1」をクリック
  2. サブメニュー「Bar1」をクリック

「Bar1」をクリックすると境界線が表示されます。これはハイライトまたはフォーカス境界のようです。マウスでウィンドウを移動している間は境界線が消えますが、移動が終わると元に戻ります。

menubar1 の黒い境界線のイメージ:

問題のある黒い境界線のあるメニューバー

スタイルシートを使用するとモチーフスタイルがクリアされるため、可能であればスタイルシートを使用せずにこの境界線を取り除く方法を知りたいです。

コード例は次のとおりです。

#include <QApplication>
#include <QMainWindow>
#include <QMenuBar>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    a.setStyle("motif");
    QMainWindow w;

    w.setFixedSize(700,300);

    QMenuBar *menubar1 = new QMenuBar(&w);
    menubar1->setFixedSize(500,30);
    menubar1->addMenu("Foo1");
    menubar1->addMenu("Bar1");

    QMenuBar *menubar2 = new QMenuBar(&w);
    menubar2->setFixedSize(500,30);
    menubar2->move(0,80);
    menubar2->addMenu("Foo2");
    menubar2->addMenu("Bar2");

    w.show();
    return a.exec();
}
4

0 に答える 0