display numeric row vector in app designer text box

I'm sure this is straight forward but I can't quite get it to work right.
I've got some code that will produce a row vector. The vector could be = [1,2,3,4,5] or it could = [1,5,6,9] or anything in between. Its just a list of unique values from some previous step.
But I want it to appear in a text box, on the app UI, like [n1,n2,n3...nx]. It doesn't have to show the brackets, but the numbers separated by comma would be ideal.
I've tried:
app.EditField.Value = evalc('Variable');
And that literally puts "Variable = 1 2 3 4 5"
I also tried:
app.EditField.Value = convertCharsToStrings(num2str(Variable));
Which, to me looks clunky (convert to string, then convert to char) and then it only puts out 1 2 3 4 5
Is there a clean way to get -> 1,2,3,4,5 in the text box?

 채택된 답변

The comma is a separator for building the vector, but is not actually part of the vector. Therefore, you will have to add it manually.
Off hand, I can't think of a 'one-line' way to do that. I'd probably do something like this.
a=1:5;
vec = sprintf('%g,',a)
vec = '1,2,3,4,5,'
app.EditField.Value = vec(1:end-1);
% visualize the result
app.EditField.Value
ans = '1,2,3,4,5'

댓글 수: 2

Update - here's a simple one-line approach
a=1:5;
strjoin(string(a),",")
ans = "1,2,3,4,5"
Alex Mason
Alex Mason 2023년 8월 21일
편집: Alex Mason 2023년 8월 21일
Awesome, this works, Thanks!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Desktop에 대해 자세히 알아보기

제품

릴리스

R2022b

질문:

2023년 8월 21일

편집:

2023년 8월 21일

Community Treasure Hunt

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

Start Hunting!

Translated by