【发布时间】:2013-11-14 17:43:48
【问题描述】:
我创建了一个基本的 MATLAB UI(不使用 GUIDE)。我基本上有一堆用于各种事物的面板(滑块、轴、文本框等)。
我想做的一件事是,当我调整图形大小时,它可以正确缩放。现在,我煞费苦心地为每个按钮、面板、子面板等制作了重新缩放功能,以使其正确重新缩放。
有没有一种简单的方法可以在这里简单地自动重新缩放?
谢谢。
【问题讨论】:
标签: matlab user-interface axes rescale
我创建了一个基本的 MATLAB UI(不使用 GUIDE)。我基本上有一堆用于各种事物的面板(滑块、轴、文本框等)。
我想做的一件事是,当我调整图形大小时,它可以正确缩放。现在,我煞费苦心地为每个按钮、面板、子面板等制作了重新缩放功能,以使其正确重新缩放。
有没有一种简单的方法可以在这里简单地自动重新缩放?
谢谢。
【问题讨论】:
标签: matlab user-interface axes rescale
使用MATLAB File Exchange 中的GUI Layout Toolbox。我个人没有使用过动态调整大小功能,但这是使用这个包的好处之一。
它的功能很像使用uicontrols,只是您不能对这些对象使用inspect 工具。
编辑:如果您只想在调整图形本身大小时调整大小,请将所有uicontrols 的Units 属性设置为@ 987654323@。
【讨论】:
get(h) 查看属性。你只是不能用图形工具来做到这一点。
set 和get 调用的图形界面。最后,您不需要使用inspect 做任何事情。您使用 GUI 布局工具箱创建的 uiextras 对象将负责为您动态调整大小。
您也可以使用内置但未记录的 uigridcontainer 和 uiflowcontainer。
他们的好处是例如允许设置约束,例如当整个数字增加时,您的按钮不会增加尺寸。检查链接以获取一些示例: http://undocumentedmatlab.com/blog/matlab-layout-managers-uicontainer-and-relatives/
【讨论】: