Filter löschen
Filter löschen

Can I do this with LOOPING

1 Ansicht (letzte 30 Tage)
Salim Muhammad
Salim Muhammad am 30 Jan. 2017
Kommentiert: Salim Muhammad am 1 Feb. 2017
Hello, i want to make some sorting program. from 2 pushbutton (pushbutton A and B) callback and with some value and the sorting in listbox. so when i push the pushbutton A, it will show the button name and the value in listbox. something like this (A, 12) with A is the name and 12 is the value. and later when i push button B with value 3 (B, 3) it should have be in the first listbox apart (A, 12) because the value in B is smaller and so everytime we press the button it will show the name and the value and if the value is smaller it will be in the first and if larger it will be in the next one. i can't use some larger and smaller operator because in the listbox they become string. how can i compare the value in the list box?

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 31 Jan. 2017
Consider storing the numeric values in the UserData field of one of the controls.
ud = get(handles.listbox1, 'UserData');
if isempty(ud)
ud = struct('as_string', {{}}, 'as_numeric', []);
end
new_str = [ud.as_string, new_string];
new_num = [ud.as_numeric, new_number];
[new_num, sort_order] = sort(new_num);
new_str = new_str(sort_order);
ud.as_string = new_str;
ud.as_numeric = new_num;
set(handles.listbox1, 'UserData', ud);
and now you can set the listbox string to new_str

Weitere Antworten (0)

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by