0

我正在使用 MATLAB GUI,我想在我的程序生成元素时将元素添加到列表框中。我有一个生成数据的函数,我想将这些数据的“名称”放在列表框中。这是我的功能:

function [ birdInfo, trackBuff ] = saveParabolaOnFramesPlot( birdInfo, trackBuff , f, listbox)

这是我实际设置元素的方式,但它失败并出现以下错误:

ListBox 类集上没有 String 属性
(listbox, 'String', stringOfField)

的值stringOfField只是一个字符串。

这是我从 AppDesigner 代码视图中调用此函数的方式:

[app.birdInfo, app.trackBuff ] = saveParabolaOnFramesPlot( app.birdInfo, app.trackBuff , app.birdInfo.aFrame, app.JumpListListBox);

我怎样才能解决这个问题?

4

1 回答 1

2

'String'是由与uicontrolAppDesigner 创建的对象不同的对象使用的属性。根据 的文档uilistbox,您需要设置Items属性

此外,如果您想附加一个新项目,您需要获取当前项目列表(字符串元胞数组)并在分配之前附加您的新项目。

currentItems = get(listbox, 'Items');
newitems = cat(2, currentItems, stringOfField);
set(listbox, 'Items', newitems)

或者更简单地说:

listboxt.Items{end+1} = stringOfField;
于 2016-12-03T18:47:42.400 回答