Azzera filtri
Azzera filtri

選択リスト(プルダウ​ン)で任意の選択肢を​選択状態にさせる方法

7 visualizzazioni (ultimi 30 giorni)
yuuji yamada
yuuji yamada il 1 Nov 2018
Commentato: yuuji yamada il 8 Nov 2018
matlab 2018aを使用し、matlab guiにてツールを作っています。 選択リスト(プルダウン)には選択肢が100~500まであり、初期表示時に400が 選択された状態にしたいです。 そこで以下のコードを書いたのですが 変数str_listがcell型の配列のため index = find(str_list == num2str(value)); の部分でエラーになってしまいます。 str_list = ['100', '200', '300', '400', '500'] という形式にしたいのですがどのようにすればよいでしょうか。 cell2mat(str_list)では欲しい形式にはなりませんでした。
% code
value = '400';
str_list = get(findobj(form, 'Tag', 'pulldown'), 'String');
index = find(str_list == num2str(value));
set(findobj(form, 'Tag', 'pulldown'), 'Value', index);

Risposta accettata

Kazuya
Kazuya il 4 Nov 2018
こちらも実行して試せる簡易なコードがあれば回答しやすいのですが・・。 cell型の変数の中身の値をチェックするのであれば、cellfun はどうでしょうか?
C = {'100','200','300'};
cellfun(@(x) strcmp(x,num2str(100)), C)
ans =
1×3 logical 配列
1 0 0
それから char の比較は strcmp がお勧めです。
  1 Commento
yuuji yamada
yuuji yamada il 8 Nov 2018
提示いただいた方法で解決いたしました。 ありがとうございました。

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su cell 配列 in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!