Filter löschen
Filter löschen

multiple ui edit field clear using a callback

4 Ansichten (letzte 30 Tage)
John Mark Odongo
John Mark Odongo am 24 Okt. 2018
Kommentiert: John Mark Odongo am 25 Okt. 2018
Is it possible to change the value of 100 edit field(4 are text 96 are numeric) UI objects without having to write code for each one of them to clear their contents. I'm using the default names EditField_1 to 100.
  1 Kommentar
Stephen23
Stephen23 am 25 Okt. 2018
Bearbeitet: Stephen23 am 25 Okt. 2018
" I'm using the default names EditField_1 to 100."
Ugh, this is such bad code design (not your fault, apparently this is just how appDesigner and GUIDE work). If you had simply written your own code (which I would recommend doing), then you could have just put all of those handles into one array H, and then all you would need is one set call:
set(H,'String','')
set even lets you set each object to a different value, read its help for more information.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 24 Okt. 2018
for k = 1:100
H = handles.(sprintf('EditField_%d', k));
set(H, 'String', sprintf('%g', rand));
end
I guessed you are working with GUIDE. It is not clear, which strings you want to insert. What is a "text" or "numeric" edit field? All these fields contain characters.
  4 Kommentare
Dennis
Dennis am 25 Okt. 2018
in appdesigner your handles are stored in app rather than in handles.
for k=1:100
H=app.(sprintf('EditField_%d',k)); %is there really a _ ?
if strcmp(get(H,'Type'),'uieditfield')
set(H,'Value','hi')
else
set(H,'Value',2)
end
end
Check the name of your first edit field, it might be EditField rather than EditField_1.
John Mark Odongo
John Mark Odongo am 25 Okt. 2018
Thanks this worked.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by