Application QML Type

提供对许多 QML 组件共享的全局应用程序状态属性的访问。更多

Import Statement: import QtQuick

属性

信号

详细说明

Application 单例向 QML 应用程序公开了QApplication 的一个属性子集。

它还提供aboutToQuit() 信号,与QCoreApplication::aboutToQuit() 相同。

import QtQuick

Window {
    id: root
    visible: true
    width: 800
    height: 680

    title: `${Application.name} (${Application.version})`

    Connections {
        target: Application
        function onAboutToQuit() {
            console.log("Bye!")
        }
    }
}

另请参阅 SystemPalette

属性文档

arguments : list<string>

这是一个字符串列表,列出了可执行文件被调用时的参数。


displayName : string

该属性代表QGuiApplication 实例上设置的应用程序显示名称。可写入此属性以设置应用程序显示名称。

Binding {
    target: Application
    property: "displayName"
    value: "My Awesome Application"
}

domain : string

这是QCoreApplication 实例上设置的组织域。可写入此属性以设置组织域。


font : font [read-only]

返回QGuiApplication::font() 返回的默认应用程序字体。


layoutDirection : enumeration [read-only]

此只读属性可用于查询应用程序的默认布局方向。系统启动时,默认布局方向取决于应用程序的语言。在文本和图形元素从右向左阅读的本地环境中,该属性的值为Qt.RightToLeft ;在阅读方向从左向右流动的本地环境中,该属性的值为Qt.LeftToRight 。您可以绑定该属性,自定义应用程序布局,以支持两种布局方向。

有关可能的值,请参阅 C++Qt::LayoutDirection 枚举。

RowLayout {
    layoutDirection: Application.layoutDirection
}

name : string

这是QCoreApplication 实例上设置的应用程序名称。可以写入此属性以设置应用程序名称。


organization : string

这是QCoreApplication 实例中设置的组织名称。可写入此属性以设置组织名称。


screens : list<Screen> [read-only]

包含所有连接屏幕描述的数组。数组中的元素是与Screen 附加对象具有相同属性的对象。实际上,该数组与QGuiApplication::screens() 返回的屏幕列表相对应。除了检查名称、宽度、高度等属性外,数组元素还可以分配给 Window 项目的屏幕属性,从而替代 C++ 方面的QWindow::setScreen()。

另请参见 Screen,Window, 和Window.screen


state : enumeration [read-only]

该属性表示应用程序的当前状态。

有关可能的值,请参见 C++Qt::ApplicationState 枚举。

Timer {
    interval: 1000; repeat: true
    active: Application.state === Qt.Qt.ApplicationActive
    onTriggered: imageFetcher.fetchLatestImages()
}

styleHints : StyleHints [read-only]

styleHints 属性提供特定于平台的样式提示和设置。详情请参见QStyleHints 文档。

下面的示例使用styleHints 来确定项目是否应在鼠标按下或触摸释放时获得焦点:

import QtQuick

MouseArea {
    id: button

    onPressed: {
        if (!Application.styleHints.setFocusOnTouchRelease)
            button.forceActiveFocus()
    }
    onReleased: {
        if (Application.styleHints.setFocusOnTouchRelease)
            button.forceActiveFocus()
    }
}

supportsMultipleWindows : bool [read-only]

如果平台支持多窗口,则返回true 。例如,某些嵌入式平台不支持多窗口。


version : string

这是QCoreApplication 实例上设置的应用程序版本。可写入此属性以设置应用程序版本。


信号文档

aboutToQuit()

该信号在应用程序即将退出主事件循环时发出。如果您的应用程序需要进行最后一秒的清理工作,该信号尤其有用。在此状态下,用户无法进行交互。更多信息,请参见Window.closing

注: 相应的处理程序是onAboutToQuit

另请参见 QCoreApplication::aboutToQuit


© 2025 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.