应用程序管理器窗口 QML 类型

在多进程环境中所需窗口根项。更多...

导入语句import QtApplicationManager.Application 2.0

信号

方法

详细说明

此 QML 项可作为您的 QML 应用程序的根项使用。这样做,您可以使应用程序在单进程(EGL 全屏、桌面)和多进程(Wayland)模式下都可用。在多进程模式下,它继承自 Window,在单进程模式下继承自 Item。与 Window 不同,它是默认可见的。更多详细信息请参阅有关 根元素 的章节。

此项的 QML 导入如下

import QtApplicationManager.Application 2.0

导入后,您可以像这样实例化 QML 项

import QtQuick 2.0
import QtApplicationManager.Application 2.0

ApplicationManagerWindow {
    Text {
        text: ApplicationInterface.applicationId
    }
}

为了使您的应用程序易于在应用程序管理器之外运行,即使您使用应用程序管理器窗口作为根项,您也可以简单地为此简易导入提供以下内容给您的应用程序。

  1. 选择一个基本目录,并在其中创建一个 QtApplicationManager.Application 目录
  2. 在此处添加一个名为 qmldir 的文件,其中包含单行 ApplicationManagerWindow 2.0 ApplicationManagerWindow.qml
  3. 添加第二个名为 ApplicationManagerWindow.qml 的文件,内容如下
    import QtQuick 2.0
    
    Item {
        width: 1280   // use your screen width here
        height: 600   // use your screen height here
    
        function close() {}
        function showFullScreen() {}
        function showMaximized() {}
        function showNormal() {}
    }

现在您可以在 qmlscene(或 qml)内运行您的应用程序,例如使用 qmlscene -I <基本目录的路径>

信号文档

windowPropertyChanged(string name, var value)

报告由 name 标识的应用程序窗口属性更改到给定的 value

注意:相应的处理器是 onWindowPropertyChanged

另请参阅setWindowProperty


方法文档

void setWindowProperty(string name, var &value)

将此应用程序窗口的共享属性 name 设置为给定的 value

这些属性在系统 UI 和客户端应用程序之间共享:在单进程模式下通过一个 QVariantMap 简单实现;在多进程模式下通过 Qt 的扩展表面 Wayland 扩展实现。客户端方面的更改通过 windowPropertyChanged 信号报告。

有关服务器端 API 的详细信息,请参阅 WindowManager

注意:在系统 UI 端监听 Wayland 客户端的属性更改时,请注意底层 Wayland 协议的 异步性

另请参阅 windowPropertywindowPropertieswindowPropertyChanged


object windowProperties()

返回一个对象,其中包含此应用程序窗口的所有共享属性。

另请参阅setWindowProperty


var windowProperty(string name)

返回由 name 标识的应用程序窗口共享属性的值。

另请参阅setWindowProperty


©2019 瑞典Luxoft AB。此处包含的文档贡献是各自所有者的版权。本提供的文档根据由自由软件基金会发布的GNU自由文档许可证 version 1.3 的条款进行许可。Qt 和相应的标志是芬兰Qt公司及其在全球其他国家的商标。所有其他商标均为其各自所有者的财产。