ApplicationWindow QML Type
ヘッダーとフッターに対応した、スタイル設定済みの最上位ウィンドウ。詳細...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
プロパティ
- activeFocusControl : Control
- background : Item
- bottomPadding : real
(since 6.9) - contentData : list<QtObject>
- contentItem : Item
- font : font
- footer : Item
- header : Item
- leftPadding : real
(since 6.9) - locale : Locale
- menuBar : Item
(since QtQuick.Controls 2.3 (Qt 5.10)) - rightPadding : real
(since 6.9) - topPadding : real
(since 6.9)
関連するプロパティ
- activeFocusControl : Control
- contentItem : Item
- footer : Item
- header : Item
- menuBar : Item
(since QtQuick.Controls 2.3 (Qt 5.10)) - window : ApplicationWindow
詳細な説明
ApplicationWindowは、ウィンドウにmenu bar 、header 、footer の各アイテムを簡単に追加できるWindow です。
ApplicationWindowをアプリケーションのルートアイテムとして宣言し、QQmlApplicationEngine を使用して実行することができます。これにより、QMLからウィンドウのプロパティ、外観、レイアウトを制御できます。

import QtQuick.Controls
ApplicationWindow {
visible: true
menuBar: MenuBar {
// ...
}
header: ToolBar {
// ...
}
footer: TabBar {
// ...
}
StackView {
anchors.fill: parent
}
}注: デフォルトでは 、ApplicationWindow は表示されません。
関連付けられた ApplicationWindow のプロパティ
QML におけるスコープおよび名前解決の仕組みにより、アプリケーションのルート要素の `id ` を、その子 QML オブジェクト内のどこからでも参照することが可能です。このアプローチは多くのアプリケーションやユースケースでは問題ありませんが、汎用的な QML コンポーネントの場合、周囲の環境への依存関係が生じるため、適切ではない可能性があります。
ApplicationWindowは、特定のウィンドウのid への依存関係を生じさせることなく、ウィンドウへの直接アクセスが利用できない場所からウィンドウやその構成要素にアクセスするために使用できる一連の添付プロパティを提供します。ApplicationWindowの添付プロパティを使用するQMLコンポーネントは、id に関係なく、どのウィンドウでも動作します。
セーフエリア
Qt 6.9 以降、ApplicationWindow は、ウィンドウから報告されたsafe area margins に対して、contentItem に自動的にパディングを追加するようになりました。これにより、contentItem がウィンドウのセーフエリア内に収まりつつ、背景アイテムがウィンドウ全体を覆うことが保証されます。
ウィンドウのcontentItem 内でセーフエリアの余白を手動で処理する場合は、topPadding 、leftPadding 、rightPadding 、bottomPadding プロパティを使用してデフォルト設定を上書きできます。
ApplicationWindow {
// Remove automatic safe area padding
topPadding: 0
Flickable {
// Inset content by safe area margin
topMargin: SafeArea.margins.top
}
}header 、footer 、およびmenuBar プロパティには、セーフエリアのマージンに対する自動的なパディングは適用されません。ただし、使用中のスタイルによっては、ToolBar 、TabBar 、およびMenuBar の実装において、セーフエリアが考慮される場合があります。
「ApplicationWindowのカスタマイズ」(Overlay )、Page 、コンテナ コントロール、および「Qt Quick コントロールのフォーカス管理」も参照してください 。
プロパティのドキュメント
activeFocusControl : Control [read-only]
このプロパティは、現在アクティブなフォーカスを持っているコントロールを保持します。アクティブなフォーカスを持つコントロールがない場合は、null を返します。
Window::activeFocusItem と ApplicationWindow::activeFocusControl の違いは、前者がコントロールの構成要素を指す場合があるのに対し、後者はそれを囲む親コントロールを指す点にあります。たとえば、SpinBox がフォーカスを持っている場合、activeFocusItem はエディタを指し、activeFocusControl はSpinBox 自体を指します。
Window::activeFocusItemも参照してください 。
background : Item
このプロパティは、背景アイテムを保持します。
背景アイテムは、ウィンドウの「content item 」の下に、ただし「background color 」の上に配置されます。
背景アイテムは、たとえば画像やグラデーションなどに役立ちますが、単色の場合は、アイテムを作成する必要がないため、color プロパティを使用することをお勧めします。
注: 背景アイテムに明示的なサイズが指定されていない場合 、自動的にコントロールのサイズに従います。ほとんどの場合、背景アイテムの幅や高さを指定する必要はありません。
関連項目: ApplicationWindowのカスタマイズ、contentItem 、header 、およびfooter 。
bottomPadding : real [since 6.9]
このプロパティは、ウィンドウのコンテンツ項目の下部パディングを保持します。明示的に設定されていない限り、その値はウィンドウのsafe area margins を反映します。
このプロパティは Qt 6.9 で導入されました。
「 topPadding 」、「leftPadding 」、および「rightPadding 」も参照してください 。
contentData : list<QtObject> [default]
このデフォルトのプロパティには、ウィンドウの子として宣言されたすべてのオブジェクトのリストが格納されます。
dataプロパティを使用すると、ApplicationWindow 内で視覚的な子要素、リソース、および他のウィンドウを自由に組み合わせることができます。
contentData リストに Item を割り当てると、その Item はウィンドウの `contentItem` の子となり、ウィンドウ内に表示されるようになります。その Item の親は、ウィンドウの `contentItem` になります。
contentData プロパティは `ApplicationWindow ` のデフォルトプロパティであるため、すべての子アイテムは自動的にこのプロパティに割り当てられることから、通常、このプロパティを参照する必要はありません。
contentItemも参照してください 。
contentItem : Item [read-only]
このプロパティは、ウィンドウのコンテンツ項目を保持します。
コンテンツアイテムは、background アイテムの上に、menuBar 、header 、およびfooter アイテムの下に配置されます。
Qt 6.9 以降、ApplicationWindow は、ウィンドウから報告されたすべてのsafe area margins に対して、contentItem に自動的にパディングを追加するようになりました。パディングを上書きするには、個別のパディングプロパティを使用してください。
関連項目: background 、menuBar 、header 、footer 、topPadding 、bottomPadding 、leftPadding 、およびrightPadding 。
font : font
このプロパティは、ウィンドウに現在設定されているフォントを保持します。
デフォルトのフォントはシステム環境によって異なります。QGuiApplication は、すべてのアプリケーションウィンドウのデフォルトとして機能するシステム/テーマフォントを管理しています。また、QMLを読み込む前に、QGuiApplication::setFont()にカスタムフォントを渡すことで、ウィンドウのデフォルトフォントを設定することもできます。最後に、Qtのフォントデータベースと照合して、最も適合するフォントが選択されます。
ApplicationWindow 明示的なフォントプロパティは子コントロールに伝播されます。ウィンドウのフォントに関する特定のプロパティを変更すると、そのプロパティはウィンドウ内のすべての子コントロールに伝播され、そのプロパティに関するシステムのデフォルト設定を上書きします。
Control::fontも参照してください 。
footer : Item
このプロパティは、ウィンドウのフッター項目を保持します。フッター項目は下部に配置され、ウィンドウの幅に合わせてサイズが調整されます。デフォルト値は `null` です。
ApplicationWindow {
footer: ToolBar {
// ...
}
}注: ウィンドウフッターに `ToolBar`、`TabBar`、または `DialogButtonBox `を割り当てると 、それぞれ対応する `ToolBar::position`、`TabBar::position`、または `DialogButtonBox::position ` プロパティが自動的に `Footer` に設定されます。
menuBar 、header 、およびPage::footerも参照してください 。
header : Item
このプロパティは、ウィンドウのヘッダー項目を保持します。ヘッダー項目は、ウィンドウの上部、メニューバーの下に配置され、ウィンドウの幅に合わせてサイズが調整されます。デフォルト値はnull です。
ApplicationWindow {
header: TabBar {
// ...
}
}注: ウィンドウヘッダーに `ToolBar`、`TabBar`、または `DialogButtonBox `を割り当てると 、それぞれの `ToolBar::position`、`TabBar::position`、または `DialogButtonBox::position ` プロパティが自動的に `Header` に設定されます。
menuBar 、footer 、およびPage::headerも参照してください 。
leftPadding : real [since 6.9]
このプロパティは、ウィンドウのコンテンツ項目の左パディングを保持します。明示的に設定されていない限り、その値はウィンドウのsafe area margins を反映します。
このプロパティは Qt 6.9 で導入されました。
「 bottomPadding 」、「topPadding 」、および「rightPadding 」も参照してください 。
locale : Locale
このプロパティは、ウィンドウのロケールを保持します。
デフォルトのロケールはシステム環境によって異なります。QMLを読み込む前に、QLocale::setDefault() を呼び出すことで、デフォルトのロケールを設定できます。
ApplicationWindow ロケールは子コントロールに伝播されます。ウィンドウのロケールを変更すると、そのロケールはウィンドウ内のすべての子コントロールに伝播され、システムのデフォルトロケールが上書きされます。
Control::localeも参照してください 。
menuBar : Item [since QtQuick.Controls 2.3 (Qt 5.10)]
このプロパティは、ウィンドウのメニューバーを保持します。メニューバーはウィンドウの上部、ヘッダーの上に配置され、ウィンドウの幅に合わせてサイズが調整されます。デフォルト値は `null` です。
ApplicationWindow {
menuBar: MenuBar {
// ...
}
}このプロパティは、QtQuick.Controls 2.3 (Qt 5.10) で導入されました。
header 、footer 、およびMenuBarも参照してください 。
rightPadding : real [since 6.9]
このプロパティは、ウィンドウのコンテンツ項目の右側のパディングを保持します。明示的に設定されていない限り、その値はウィンドウのsafe area margins を反映します。
このプロパティは Qt 6.9 で導入されました。
「 bottomPadding 」、「leftPadding 」、および「topPadding 」も参照してください 。
topPadding : real [since 6.9]
このプロパティは、ウィンドウのコンテンツ項目の上側のパディングを保持します。明示的に設定されていない限り、その値はウィンドウのsafe area margins を反映します。
このプロパティは Qt 6.9 で導入されました。
「 bottomPadding 」、「leftPadding 」、および「rightPadding 」も参照してください 。
関連するプロパティのドキュメント
ApplicationWindow.activeFocusControl : Control [read-only attached]
この添付プロパティは、現在アクティブなフォーカスを持っているコントロールを保持します。アクティブなフォーカスを持つコントロールがない場合は、null となります。このプロパティは、任意のアイテムに添付することができます。アイテムがウィンドウ内にない場合、またはウィンドウにアクティブなフォーカスがない場合は、値はnull となります。
「 Window::activeFocusItem 」および「Attached ApplicationWindow Properties 」も参照してください 。
ApplicationWindow.contentItem : Item [read-only attached]
この添付プロパティは、ウィンドウのコンテンツ項目を保持します。このプロパティは、任意の項目に添付することができます。項目がApplicationWindow に含まれていない場合、値はnull となります。
「Attached ApplicationWindow Properties」も参照してください 。
ApplicationWindow.footer : Item [read-only attached]
この添付プロパティは、ウィンドウのフッター項目を保持します。このプロパティは、任意の項目に添付することができます。項目がApplicationWindow に含まれていない場合、またはウィンドウにフッター項目がない場合は、値はnull となります。
「Attached ApplicationWindow Properties」も参照してください 。
ApplicationWindow.header : Item [read-only attached]
この添付プロパティは、ウィンドウのヘッダー項目を保持します。このプロパティは、任意の項目に添付することができます。項目がApplicationWindow に含まれていない場合、またはウィンドウにヘッダー項目がない場合は、値はnull となります。
「Attached ApplicationWindow Properties」も参照してください 。
ApplicationWindow.menuBar : Item [read-only attached, since QtQuick.Controls 2.3 (Qt 5.10)]
このアタッチメントプロパティは、ウィンドウのメニューバーを保持します。このプロパティは、任意のアイテムにアタッチすることができます。アイテムがApplicationWindow に属していない場合、またはウィンドウにメニューバーがない場合は、値はnull となります。
このプロパティは、QtQuick.Controls 2.3 (Qt 5.10) で導入されました。
「Attached ApplicationWindow Properties」も参照してください 。
ApplicationWindow.window : ApplicationWindow [read-only attached]
このアタッチされたプロパティは、アプリケーションウィンドウを保持します。このプロパティは、任意のアイテムにアタッチすることができます。アイテムが「ApplicationWindow 」に含まれていない場合、値は「null 」となります。
「Attached ApplicationWindow Properties」も参照してください 。
© 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.