2

Qtの特定のQMessageBoxに特定のスタイルを設定する方法。特に、「Well done !!!」というテキストのフォントサイズと色を設定して、以下のメッセージボックスを呼び出したいと思います。

QMessageBox::information(this, "Done", "Well done!!!");
4

3 に答える 3

2

この静的メソッドを使用すると、QMessageBoxに直接アクセスできません。これは、QMessageBoxが関数内で完全に作成および破棄されているためです。ただし、この関数を呼び出す前に、呼び出すオブジェクトのスタイルシートプロパティを変更しようとする場合があります。これは、呼び出し元のオブジェクトがQWidgetの子孫である必要があることを意味します...

このようなもの:

QString tmpStyleSheet=this->styleSheet();
this->setStyleSheet("style sheet for your QMessageBox");
QMessageBox::information(this, "Done", "Well done!!!");
this->setStyleSheet(tmpStyleSheet);

QMessageBoxのスタイルは親のスタイルを継承します...

于 2010-12-23T16:50:42.423 に答える
1

QMessageBoxのテキストをHTMLコードでフォーマットしました。質問でごめんなさい。そして答えてくれてありがとう。

于 2010-12-23T17:19:20.267 に答える
1

その特定のメッセージボックスのQMessageBoxオブジェクトを作成してから、setStyle()またはsetStyleSheet()のいずれかを作成する必要があります。つまり、静的ヘルパーメソッドを使用することはできません。

于 2010-12-23T16:43:17.460 に答える