网格父级中MATLAB App Designer中编辑字段组件的布局语法
我想在MATLAB App Designer中创建编辑字段后,立即在网格中指定布局网格父级中MATLAB App Designer中编辑字段组件的布局语法,matlab,matlab-app-designer,Matlab,Matlab App Designer,我想在MATLAB App Designer中创建编辑字段后,立即在网格中指定布局 app.villes1 = uieditfield(app.GHIetPOA_grid, 'text', 'HorizontalAlignment', 'center', ... 'Editable', 'on', 'Layout', **???**); 我试着简单地使用[r,c],但这种语法似乎不正确。我用谷歌搜索了我的问题,找到了通过创建编辑字段并在点索引后指定行和列来指定行和列
app.villes1 = uieditfield(app.GHIetPOA_grid, 'text', 'HorizontalAlignment', 'center', ...
'Editable', 'on', 'Layout', **???**);
我试着简单地使用[r,c],但这种语法似乎不正确。我用谷歌搜索了我的问题,找到了通过创建编辑字段并在点索引后指定行和列来指定行和列的唯一方法:
app.villes1.Layout.Row = 2;
app.villes1.Layout.Column = i+2;
但是,我不能使用它,因为我实际上是在for循环中生成编辑字段,并且禁止以这种方式进行点索引:
function initVilles1(app)
for i=1:8
app.villes1(i) = uieditfield(app.GHIetPOA_grid, 'text', 'HorizontalAlignment', ...
'center', 'Editable', 'on');
app.villes1(i).Layout.Row = 2;
app.villes1(i).Layout.Column = i+2;
end
end
已经谢谢你了!(:您需要将
villes1
初始化为gobject的数组
看
例如:
properties (Access = private)
GHIetPOA_grid matlab.ui.container.GridLayout
villes1 = gobjects(1, 8);
end
我只能猜测您使用了以下语法:villes1=zeros(1,8);
上面的语法创建了一个双元素数组。
然后app.villes1(i)=uieditfield(…)
创建一个“旧式”数字句柄,而不是创建一个对象。
使用数字句柄时禁止使用点表示法
您需要使用以下语法:villes1=gobjects(1,8);
现在点索引应该可以工作了
以下是完整的代码(包括生成的代码):
classdef app1
备注:下次发布问题时,请尽力发布所有相关代码。您需要将villes1
初始化为gobject的数组
看
例如:
properties (Access = private)
GHIetPOA_grid matlab.ui.container.GridLayout
villes1 = gobjects(1, 8);
end
我只能猜测您使用了以下语法:villes1=zeros(1,8);
上面的语法创建了一个双元素数组。
然后app.villes1(i)=uieditfield(…)
创建一个“旧式”数字句柄,而不是创建一个对象。
使用数字句柄时禁止使用点表示法
您需要使用以下语法:villes1=gobjects(1,8);
现在点索引应该可以工作了
以下是完整的代码(包括生成的代码):
classdef app1