欢迎光临散文网 会员登陆 & 注册

【MATLAB App Designer】关于uifigure的菜单栏显示的问题

2022-02-01 11:54 作者:-何其-  | 我要投稿

UIfigure的WindowStyle属性

UIfigure的WindowStyle属性有以下三种

  • 'normal' — 图形窗口独立于其他窗口,在图形显示时可以访问其他窗口。

  • 'modal'— 该图形以正常窗口样式显示在所有现有图形窗口的顶部,只要顶部图形存在并保持模态,就无法访问它们。但是,将显示在模态图之后创建的任何新图。

    当存在多个模态窗口时,最近创建的窗口保持焦点并保持在所有其他窗口之上,直到它变得不可见,或者返回到正常的窗口样式,或者被删除。那时,焦点恢复到上次获得焦点的窗口。

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

菜单栏的显示与隐藏

1.将WindowStyle属性设置为modal,菜单栏则会在会隐藏

WindowStyle属性设置为modal

2.将WindowStyle属性设置为normal/alwaysontop,菜单栏则会在会显示出来

WindowStyle属性设置为normal/alwaysontop


将WindowStyle属性设置为normal

则通过程序打开选择文件后,则该顶层显示的窗口会在Windows窗口中置于底层,从matlab2020版本到现在,这个问题一直存在。

将WindowStyle属性设置为alwaysontop

窗口居于顶层,但文件系统打开的弹窗则无法处于最顶层;下图中“请选择指定...”就是窗口打开的文件夹弹窗,但无法居于最顶层。

窗口仍保持顶层显示,但打开的文件夹缺无法居于最顶层

改进

通过normal和alwaysontop组合实现,组合效果如下,中间函数为打开文件的函数

编码编写示意

执行效果为打开的文件窗口居于最高,选中文件后,窗口仍居中最顶层

执行效果

备注

以上测试软件为matlab 2021b版本



【MATLAB App Designer】关于uifigure的菜单栏显示的问题的评论 (共 条)

分享到微博请遵守国家法律