在MATLAB中的GUIDE中打开它之前和之后GUI元素位置的差异

Posted

技术标签:

【中文标题】在MATLAB中的GUIDE中打开它之前和之后GUI元素位置的差异【英文标题】:Difference between position of elements of GUI before and after open it in GUIDE in MATLAB 【发布时间】:2014-08-03 14:16:55 【问题描述】:

我正在用 GUIDE 设计一个 GUI。当我在 GUIDE 中打开一个窗口然后运行它时,面板、单选按钮等元素的位置与我运行 MATLAB 并直接从.m file 运行 GUI 时不同。这是一个令人困惑的问题,因为真正的位置是我从.m file 运行。

与直接运行它相比,窗口的所有元素都向右接近 1 厘米,我在这两者之间有一点垂直差异。我应该设计一个窗口,然后关闭 MATLAB 并直接运行它以查看真实位置!如果我在使用 GUIDE 后直接从.m file 打开它,那么从 GUIDE 运行和从 .m file 运行没有任何区别。我必须重新启动 MATLAB 才能看到差异。

你对这个问题有什么想法?我该如何解决?

【问题讨论】:

【参考方案1】:

想法 1

这更像是一种解决方法而不是解决方案:

在 GUIDE 中定位所有元素后,您可以做的是使用菜单栏选项 @ 将图形导出到 .m 文件(实际上不需要 .fig 来获得交互式图形) 987654323@ 在指南中。

这样您将获得一个.m 文件,其中所有元素的位置都硬编码。如果您更改该文件中的位置值,则绝对没有机会它们会出现在其他地方。

想法 2

尝试将 GUI 的 Resize behavior 设置为 Non-resizable。这可以通过Tools > GUI Options...从 GUIDE 菜单访问

【讨论】:

感谢您的回答,但没有解决问题。我检查了您的第一个想法并创建了一个 .m 文件。在 GUIDE 中一切都很好,但是当我运行 .m 文件时,所有元素都比正常位置右 1 厘米。在这种情况下,当我重新运行 MATLAB 时并没有什么不同。 GUIDE 中的好位置和从.m 文件运行的坏位置。我认为 GUIDE 中存在错误。 能否在 GUIDE 中添加您的界面截图?我怀疑您的问题与边距大小有关。顺便说一句,你为什么不能只选择所有内容并将其向左移动 1 厘米? 是的。我现在正在我的作品中这样做,但我正在寻找任何解决方案。重新运行 MATLAB 以查看更改位置的效果有点困难。我在每个窗口都有不同的情况和位置变化。我添加了一个屏幕截图。

以上是关于在MATLAB中的GUIDE中打开它之前和之后GUI元素位置的差异的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB中text命令如何改颜色

使用 GUIDE 在 MATLAB GUI 中创建透明文本框

MATLAB:在脚本和 GUI 之间传输变量

如何用MATLAB GUI创建图形用户界面

如何在 MATLAB 中识别数值数组中的断点

Matlab新建控件工程