Borrar filtros
Borrar filtros

display numeric row vector in app designer text box

5 visualizaciones (últimos 30 días)
Alex Mason
Alex Mason el 21 de Ag. de 2023
Editada: Alex Mason el 21 de Ag. de 2023
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?

Respuesta aceptada

Cris LaPierre
Cris LaPierre el 21 de Ag. de 2023
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 comentarios
Cris LaPierre
Cris LaPierre el 21 de Ag. de 2023
Update - here's a simple one-line approach
a=1:5;
strjoin(string(a),",")
ans = "1,2,3,4,5"
Alex Mason
Alex Mason el 21 de Ag. de 2023
Editada: Alex Mason el 21 de Ag. de 2023
Awesome, this works, Thanks!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Develop Apps Using App Designer en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by