控制基于 uifigure 的 App 的 UI 图窗的外观和行为

您所在的位置:网站首页 matlab的appdesigner 控制基于 uifigure 的 App 的 UI 图窗的外观和行为

控制基于 uifigure 的 App 的 UI 图窗的外观和行为

#控制基于 uifigure 的 App 的 UI 图窗的外观和行为| 来源: 网络整理| 查看: 265

窗口样式,指定为下列值之一:

'normal' - 此图窗窗口独立于其他窗口,并且在显示图窗时可以访问其他窗口。

'modal' - 该图窗以正常窗口样式显示在所有现有图窗窗口的上方,并使这些窗口变得无法访问(只要顶层图窗存在并保持模态)。但是,任何在模态图窗之后创建的新图窗都会显示出来。

存在多个模态窗口时,最新创建的窗口将会保持焦点并位于所有其他窗口之上,直到变得不可见、恢复为正常窗口样式或被删除。此时,焦点会重新回到上次具有焦点的窗口。

'alwaysontop' - 图窗显示在所有其他窗口的顶部,包括模态图窗窗口和来自非 MATLAB 应用程序的窗口。其他窗口仍可访问。

注意

以下是 WindowStyle 属性的一些重要特性和一些推荐的最佳做法:

创建 UI 窗口时,应始终指定 WindowStyle 属性。如果还想要设置图窗的 Resize 或 Position 属性,先要设置 WindowStyle 属性。

您可以随时更改图窗的 WindowStyle 属性,包括图窗可见并包含子图窗的情况。但是,在某些系统上,设置该属性可能会导致图窗闪烁或者消失后重新显示,具体取决于系统的正常窗口和模态窗口的实现。为实现最佳视觉效果,应在创建时或图窗不可见时设置 WindowStyle 属性。

UI 图窗模态窗口样式行为

当 WindowStyle 设置为 'modal' 时,UI 图窗窗口会阻止在它之前创建的 UI 图窗窗口中的键盘和鼠标交互,并将其 Visible 属性设置为 'on'。例如,在此示例中,图窗 3 相对于图窗 2 为模态图窗,图窗 2 相对于图窗 1 为模态图窗。

fig1 = uifigure('Name','Figure 1'); fig1.WindowStyle = 'modal'; fig2 = uifigure('Name','Figure 2'); fig2.WindowStyle = 'modal'; fig3 = uifigure('Name','Figure 3'); fig3.WindowStyle = 'modal';如果图窗层次结构中有模态图窗和普通图窗的组合,则不会保留模态层次结构。

与使用 figure 函数创建的模态图窗不同,使用 uifigure 函数创建的模态图窗不会阻止用户访问用 figure 函数或 MATLAB 桌面创建的图窗。也不会阻止与 MATLAB 以外的应用程序窗口的交互。

模态图窗获得焦点时键入 Ctrl+C 会导致图窗恢复到 'normal' WindowStyle 属性设置。这样用户可以在命令行键入内容。

WindowStyle 属性设置为 'modal' 并且 Visible 属性设置为 'off' 的 UI 图窗在 MATLAB 使它们变得可见之前不会以模态方式运行。因此,您可以隐藏模态窗口供以后重用,而不用销毁它。

模态图窗不显示菜单子级、内置菜单或工具栏。但是,在模态图窗中创建菜单或在具有菜单子级的图窗上将 WindowStyle 属性设置更改为 'modal' 并不是错误。Menu 对象会存在,而且图窗会保留它们。如果您将 UI 图窗的 WindowStyle 属性重置为 'normal',则会显示菜单。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3