このページでは

ユニバーサルスタイル

ユニバーサルスタイルは、Microsoftのユニバーサルデザインガイドラインに基づいています。詳細...

インポート文: import QtQuick.Controls.Universal
バージョン: Qt 5.7

関連プロパティ

関連メソッド

  • colorcolor(列挙型 predefined)

詳細な説明

「ユニバーサル」スタイルは、Microsoftのユニバーサルデザインガイドラインに基づいた、デバイスに依存しないスタイルです。このスタイルは、スマートフォンやタブレットからPCに至るまで、あらゆるデバイスで見栄えがよいように設計されています。

ユニバーサルスタイルのライトテーマにおけるコントロールギャラリー

ユニバーサルスタイルのライトテーマ。

ユニバーサルスタイルのダークテーマにおけるコントロールギャラリー

ユニバーサルスタイルのダークテーマ。

ユニバーサル スタイルでアプリケーションを実行するには、「 Qt Quick コントロールでのスタイルの使用」を参照してください。

注: ユニバーサルスタイルは 、Windows 10 ネイティブのスタイルではありません。ユニバーサルスタイルは、Microsoft ユニバーサルデザインガイドラインに準拠した、100% クロスプラットフォーム対応のQt Quick Controls スタイル実装です。このスタイルはどのプラットフォームでも動作し、どの環境でもほぼ同じ外観になります。利用可能なシステムフォントやフォントレンダリングエンジンの違いにより、若干の差異が生じる場合があります。

カスタマイズ

ユニバーサルスタイルでは、テーマ、アクセント、前景色、背景色の4つの属性をカスタマイズできます。

テーマおよびアクセントの属性を示すユニバーサルスタイルのボタン

これらの属性はいずれも、任意のウィンドウやアイテムに対して指定することができ、fonts と同様に、子要素へ自動的に継承されます。次の例では、ウィンドウと3つのラジオボタンすべてが、紫色のアクセント色を使用したダークテーマで表示されています:

import QtQuick
import QtQuick.Controls
import QtQuick.Controls.Universal

ApplicationWindow {
    visible: true

    Universal.theme: Universal.Dark
    Universal.accent: Universal.Violet

    Column {
        anchors.centerIn: parent

        RadioButton { text: qsTr("Small") }
        RadioButton { text: qsTr("Medium");  checked: true }
        RadioButton { text: qsTr("Large") }
    }
}

ユニバーサルスタイルのコントロールに、カスタムデザインのバイオレットのアクセントを施したデザイン

QMLで属性を指定するほか、環境変数や設定ファイルを介して指定することも可能です。QMLで指定された属性は、他のすべての指定方法よりも優先されます。

設定ファイル

変数説明
Themeデフォルトのユニバーサルテーマを指定します。値には、利用可能なテーマのいずれかを指定できます(例:"Dark" )。
Accentデフォルトのユニバーサルアクセント色を指定します。値は任意のcolor を指定できますが、"Violet" など、あらかじめ定義されたユニバーサルカラーのいずれかを使用することを推奨します。
Foregroundデフォルトのユニバーサル前景色を指定します。値は任意のcolor または、"Brown" などの事前定義されたユニバーサルカラーのいずれかです。
Backgroundデフォルトのユニバーサル背景色を指定します。値としては、任意のcolor 、または"Steel"などの定義済みのユニバーサルカラーのいずれかを指定できます。

設定ファイルの詳細については、「Qt Quick コントロール設定ファイル」を参照してください。

環境変数

変数説明
QT_QUICK_CONTROLS_UNIVERSAL_THEMEデフォルトのユニバーサルテーマを指定します。値には、利用可能なテーマ(例:"Dark" )のいずれかを指定できます。
QT_QUICK_CONTROLS_UNIVERSAL_ACCENTデフォルトのユニバーサルアクセント色を指定します。値は任意のcolor にできますが、"Violet" など、あらかじめ定義されたユニバーサルカラーのいずれかを使用することを推奨します。
QT_QUICK_CONTROLS_UNIVERSAL_FOREGROUNDデフォルトのユニバーサル前景色を指定します。値は任意のcolor または、"Brown" などの事前定義されたユニバーサルカラーのいずれかを指定できます。
QT_QUICK_CONTROLS_UNIVERSAL_BACKGROUNDデフォルトのユニバーサル背景色を指定します。値としては、任意のcolor 、または"Steel"などの定義済みのユニバーサルカラーのいずれかを指定できます。

サポートされている環境変数の完全なリストについては、『Qt Quick コントロール』の「サポートされている環境変数」を参照してください。

依存関係

Universal スタイル固有の属性を利用するには、Universal スタイルを別途インポートする必要があります。なお、Universal スタイルへの参照の有無にかかわらず、同じアプリケーションコードは他のどのスタイルでも実行されます。Universal スタイル固有の属性は、アプリケーションが Universal スタイルで実行された場合にのみ効果を発揮します。

常に読み込まれるQMLファイルにUniversalスタイルがインポートされている場合、アプリケーションがどのスタイルで実行されても問題なく動作させるためには、Universalスタイルをアプリケーションと一緒にデプロイする必要があります。ファイルセレクタを使用することで、スタイルへのハードな依存関係を作成することなく、スタイル固有の調整を適用することができます。

定義済みのユニバーサルカラー

利用可能な定義済みカラー:

定数説明
Universal.Lime
#A4C400
Universal.Green
#60A917
Universal.Emerald
#008A00
Universal.Teal
#00ABA9
Universal.Cyan
#1BA1E2
Universal.Cobalt
#3E65FF(デフォルトのアクセント)
Universal.Indigo
#6A00FF
Universal.Violet
#AA00FF
Universal.Pink
#F472D0
Universal.Magenta
#D80073
Universal.Crimson
#A20025
Universal.Red
#E51400
Universal.Orange
#FA6800
Universal.Amber
#F0A30A
Universal.Yellow
#E3C800
Universal.Brown
#825A2C
Universal.Olive
#6D8764
Universal.Steel
#647687
Universal.Mauve
#76608A
Universal.Taupe
#87794E

「基本スタイル」、「マテリアルスタイル」も参照

関連するプロパティのドキュメント

Universal.accent:color

このアタッチドプロパティは、テーマのアクセントカラーを保持します。このプロパティは、任意のウィンドウやアイテムにアタッチできます。値は子要素に伝播されます。

デフォルト値はUniversal.Cobalt です。

次の例では、ハイライトされたボタンのアクセントカラーがUniversal.Orange に変更されています:

Button {
    text: qsTr("Button")
    highlighted: true
    Universal.accent: Universal.Orange
}

アクセントカラーを表示するユニバーサルスタイルのコントロール

注: アクセントカラーは任意のcolor に設定できますが 、ユニバーサルスタイルパレットの他の色と調和するように設計された、あらかじめ定義されたユニバーサルカラーのいずれかを使用することをお勧めします。


Universal.background:color

このアタッチドプロパティは、テーマの背景色を保持します。このプロパティは、任意のウィンドウやアイテムにアタッチできます。値は子要素に伝播されます。

デフォルト値はテーマごとに異なります(ライトまたはダーク)。

次の例では、ペインの背景色をUniversal.Steel に変更しています:

Pane {
    Universal.background: Universal.Steel

    Button {
        text: qsTr("Button")
    }
}

背景色を表示するユニバーサルスタイルのコントロール


Universal.foreground:color

このアタッチドプロパティは、テーマのフォアグラウンド色を保持します。このプロパティは、任意のウィンドウやアイテムにアタッチできます。値は子要素に伝播されます。

デフォルト値はテーマによって異なります(ライトまたはダーク)。

次の例では、ボタンの前景色がUniversal.Pink に設定されています:

Button {
    text: qsTr("Button")
    Universal.foreground: Universal.Pink
}

前景色を表示するユニバーサルスタイルのコントロール


Universal.theme:列挙型

このアタッチドプロパティは、テーマがライトかダークかを保持します。このプロパティは、任意のウィンドウやアイテムにアタッチできます。値は子要素に伝播されます。

利用可能なテーマ:

定数説明
Universal.Lightライトテーマ(デフォルト)
Universal.Darkダークテーマ
Universal.Systemシステムテーマ

テーマをSystem に設定すると、システムのテーマカラーに基づいてライトテーマまたはダークテーマのいずれかが選択されます。ただし、themeプロパティの値を読み取る場合、その値はSystem になることはなく、実際のテーマの値になります。

次の例では、ペインとボタンの両方のテーマが `Universal.Dark` に設定されています:

Pane {
    Universal.theme: Universal.Dark

    Button {
        text: qsTr("Button")
    }
}

ライトテーマとダークテーマにおけるユニバーサルスタイルのコントロール


添付のメソッドドキュメント

color color(列挙型 predefined)

この添付メソッドは、指定された事前定義済みのユニバーサルカラーの有効な色値を返します。

Rectangle {
    color: Universal.color(Universal.Red)
}

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.