How to Change the Background Color of QWidget/ja: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[How to Change the Background Color of QWidget|English]] | [[How to Change the Background Color of QWidget Bulgarian|Български]] | '''日本語''' | [[How to Change the Background Color of QWidget SimplifiedChinese|简体中文]]
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}


=QWidget の背景色を変える方法=
[[Category:snippets]]
[[Category:HowTo]]


[http://doc.qt.io/qt-5.0/qtwidgets/qwidget.html QWidget] ''[qt.io]'' は全てのユーザーインターフェースオブジェクトの基底クラスです。そのため、他のウィジェットでも同じ方法で背景色を変えることが出来ます。
[[How_to_Change_the_Background_Color_of_QWidget|English]] | [[How_to_Change_the_Background_Color_of_QWidget_Bulgarian|Български]] | '''日本語''' | [[How_to_Change_the_Background_Color_of_QWidget_SimplifiedChinese|简体中文]]


==パレットを使う==
= QWidget の背景色を変える方法 =


最初のサンプルでは [http://doc.qt.io/qt-5.0/qtgui/qpalette.html QPalette] ''[qt.io]'' を使って背景色を変える方法を示します。
[http://doc.qt.io/qt-5.0/qtwidgets/qwidget.html QWidget] は全てのユーザーインターフェースオブジェクトの基底クラスです。そのため、他のウィジェットでも同じ方法で背景色を変えることが出来ます。


==スタイルシートを使う==
== パレットを使う ==


スタイルシートではウィジェットのスタイルをテキストの記述を用いてカスタマイズすることが出来ます。詳細は [http://doc.qt.io/qt-5.0/qtwidgets/stylesheet.html Qt Style Sheets document] ''[qt.io]'' を参照してください。
最初のサンプルでは [http://doc.qt.io/qt-5.0/qtgui/qpalette.html QPalette] を使って背景色を変える方法を示します。


どちらの方法でも QWidget の背景色が変わったことを Qt <span class="caps">SDK</span> 1.1 と Symbian^3 デバイスで確認しました。
<code>
m_pMyWidget = new QWidget(this);
m_pMyWidget->setGeometry(0,0,300,100);
QPalette Pal(palette());
// 背景色を黒にする
Pal.setColor(QPalette::Background, Qt::black);
m_pMyWidget->setAutoFillBackground(true);
m_pMyWidget->setPalette(Pal);
m_pMyWidget->show();
</code>


===Categories:===
== スタイルシートを使う ==


* [[:Category:HowTo|HowTo]]
スタイルシートではウィジェットのスタイルをテキストの記述を用いてカスタマイズすることが出来ます。詳細は [http://doc.qt.io/qt-5.0/qtwidgets/stylesheet.html Qt Style Sheets document] を参照してください。
* [[:Category:snippets|snippets]]
 
<code>
m_pMyWidget = new QWidget(this);
m_pMyWidget->setGeometry(0,0,300,100);
m_pMyWidget->setStyleSheet("background-color:black;");
m_pMyWidget->show();
</code>
 
どちらの方法でも QWidget の背景色が変わったことを Qt SDK 1.1 と Symbian^3 デバイスで確認しました。
 
注意: QWidgetを継承したカスタムウィジェットの場合、スタイルシートを使うためにpaintEventを準備する必要があります。
 
<code>
void CustomWidget::paintEvent(QPaintEvent *)
{
QStyleOption opt;
opt.init(this);
QPainter p(this);
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}
</code>

Latest revision as of 11:41, 9 September 2015

This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

English | Български | 日本語 | 简体中文

QWidget の背景色を変える方法

QWidget は全てのユーザーインターフェースオブジェクトの基底クラスです。そのため、他のウィジェットでも同じ方法で背景色を変えることが出来ます。

パレットを使う

最初のサンプルでは QPalette を使って背景色を変える方法を示します。

m_pMyWidget = new QWidget(this);
m_pMyWidget->setGeometry(0,0,300,100);
QPalette Pal(palette());
// 背景色を黒にする
Pal.setColor(QPalette::Background, Qt::black);
m_pMyWidget->setAutoFillBackground(true);
m_pMyWidget->setPalette(Pal);
m_pMyWidget->show();

スタイルシートを使う

スタイルシートではウィジェットのスタイルをテキストの記述を用いてカスタマイズすることが出来ます。詳細は Qt Style Sheets document を参照してください。

m_pMyWidget = new QWidget(this);
m_pMyWidget->setGeometry(0,0,300,100);
m_pMyWidget->setStyleSheet("background-color:black;");
m_pMyWidget->show();

どちらの方法でも QWidget の背景色が変わったことを Qt SDK 1.1 と Symbian^3 デバイスで確認しました。

注意: QWidgetを継承したカスタムウィジェットの場合、スタイルシートを使うためにpaintEventを準備する必要があります。

void CustomWidget::paintEvent(QPaintEvent *)
{
 QStyleOption opt;
 opt.init(this);
 QPainter p(this);
 style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}