Logo FluentUI

WindowRouter QML Type

管理窗口路由和导航的单例组件。. More...

Import Statement: import FluentUI.Controls 1.0

Properties

Methods

  • void addWindow(QtObject window)
  • void exit(int retCode)
  • void go(string route, var argument, QtObject windowRegister)
  • void removeWindow(QtObject win)

Detailed Description

`WindowRouter` 组件是一个单例对象,用于处理应用程序的窗口路由和导航。它支持添加、移除窗口,并在窗口之间导航。此组件提供了控制窗口实例的生命周期和导航模式的功能。

示例用法:

 WindowRouter {
  id: router
  routes: {
      "home": "HomePage.qml",
      "settings": "SettingsPage.qml"
  }
 }

 // 添加一个窗口
 router.addWindow(myWindow)

 // 从路由中导航到目标窗口
 router.go("home", {param1: "value1"})

 // 设置窗口结果并退出应用程序
 router.exit(0)

Property Documentation

routes : var

路由映射。此属性定义了路由名称与对应的窗口组件路径之间的映射。


windows : var

窗口列表。此属性存储当前活动的窗口实例。


Method Documentation

void addWindow(QtObject window)

添加窗口。此方法将一个窗口添加到窗口列表中。

window 要添加的窗口实例。


void exit(int retCode)

退出应用程序。此方法关闭所有活动窗口并退出应用程序。

retCode 退出码,用于返回给操作系统。


void go(string route, var argument = {}, QtObject windowRegister = undefined)

导航到指定窗口。此方法根据路由名称创建并显示目标窗口,可以传递参数,并选择是否注册窗口。

route 路由名称,必须在 `routes` 属性中定义。 argument 导航参数,默认为空对象。 windowRegister 可选的窗口注册对象,用于在目标窗口中存储窗口引用。


void removeWindow(QtObject win)

移除窗口。此方法将一个窗口从窗口列表中移除并删除它。

win 要移除的窗口实例。