gpt4 book ai didi

Matlab UI 控制单元

转载 作者:太空宇宙 更新时间:2023-11-03 20:31:14 25 4
gpt4 key购买 nike

我正在使用 uicontrol 创建 GUI 元素。以下是我的代码

uicontrol('Style','pushbutton', 'String','Load data','Parent',hTabs(1),'Position',[250 825 80 20], 'Callback',@ButtonCallback);

这里的问题是,当我使用单位标准化选项时,GUI 元素从屏幕上消失了。我想使用标准化,以便 GUI 在不同的屏幕分辨率下进行 self 调整。对此的任何想法都会对我很有帮助。

最佳答案

当您使用Normalized 单位时,您需要定义介于 0 和 1 之间的位置,其中 0 是底部/左侧,1 是包含对象的总高度/宽度。

您当前使用的数字完全超出此范围来定义位置。你可以做两件事。

  • 在单独的函数调用中将单位切换为标准化(如下所示)
  • 使用标准化单位创建 uicontrol,但您必须计算正确的位置向量

这里有一些关于如何做的例子

一个简单的解决方案是创建 uicontrol,然后在单独的调用中将单位设置为标准化

u = uicontrol(...) %don't specify the units
set(u,'Units', 'Normalized'); % this solves your problem

如果你想得到归一化单位的位置向量

normPos = get(u, 'Position') % get the position in normal space

然后使用这些数字创建具有标准化单位的 uicontrol:

u = uicontrol(...,'Units','Normalized', 'Position', normPos); 

关于Matlab UI 控制单元,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11524384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com