2016-12-03 15 views
0

私はMATLABのGUIを使って遊んでいますが、私のプログラムがそれらを生成するときにlistBoxに要素を追加したいと思います。私はデータを生成する関数を持っており、それらのデータの "Name"をリストボックスの中に入れたいと思っています。ここに私の関数があります:uilistboxにプログラムでプログラムを追加する

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

ここで私は実際に要素を設定する方法ですが、それは次のエラーで失敗します。

There is no String property on the ListBox class
set(listbox, 'String', stringOfField)

stringOfFieldの値は単なる文字列です。ここで

は私がAppDesignerコードビューからこの関数を呼び出す方法は次のとおりです。

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

どのように私はこの問題を解決することができますか?

答えて

2

'String'は、uicontrolオブジェクトがAppDesignerで作成したオブジェクトとは異なるプロパティで使用されるプロパティです。 uilistboxのドキュメントに基づいて、あなたはアペンド新しいアイテムを希望している場合、あなたはアイテムの現在のリスト(セル配列を取得したいと思う。またその代わり

Itemsプロパティを設定することをお勧めしますあなたの新しい項目を割り当てる前に追加してください。

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

以上単に:

listboxt.Items{end+1} = stringOfField; 
+0

おかげで、これは私の問題を解決しました。私は文書を読んだことを誓っていますが、おそらく私はこの重要なステップを逃しました。^_ ^ – Leo91