1

有没有办法制作一个对象数组(按钮、静态文本、字段等),其大小由用户在 matlab gui 中给出?

例如,用户在一个字段中键入 12,然后创建 12 个按钮。

PS mathworks.com 不允许我访问它的页面。一些幼稚的政治问题:&请在这里回答。谢谢!

4

1 回答 1

5

你可以尝试这样的事情:

N = input('How many buttons?   ');

hFig = figure;

hGroup = uibuttongroup('Units','Normalized','Position',[0 0 1 1]);

for i = 1:N
    hText(i) = uicontrol('Style','Text','String',['Variable' num2str(i)],...
        'Parent',hGroup,'Units','normalized','Position',[0 1-i/(N+1) 1/2 1/(N+1)],...
        'BackgroundColor','white');
    hInput(i) = uicontrol('Style','edit',...
        'Parent',hGroup,'Units','normalized','Position',[1/2 1-i/(N+1) 1/2 1/(N+1)],...
        'BackgroundColor','white');
end

hButton = uicontrol('Style','pushbutton','Parent',hGroup,'Units','normalized',...
    'String','Go!','Position',[0 0 1 1/(N+1)],'Callback',{});

当然,您可以随意调整位置等。您可以将uibuttongroup输入字段放在您希望出现的任何位置。

于 2013-04-24T06:41:40.827 回答