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

5 views (last 30 days)
yuuji yamada
yuuji yamada on 1 Nov 2018
Commented: yuuji yamada on 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);

Accepted Answer

Kazuya
Kazuya on 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 Comment
yuuji yamada
yuuji yamada on 8 Nov 2018
提示いただいた方法で解決いたしました。 ありがとうございました。

Sign in to comment.

More Answers (0)

Categories

Find more on cell 配列 in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!