Ich habe eine GUI, die eine Auswahl aus einem Popupmenü in einem anderen Rückruf verwendet. Gibt es eine Möglichkeit, den ausgewählten Wert des Popupmenüs in nur einer Zeile zurückzugeben, ohne temporäre Variablen zu erstellen? Ich habe mehrere Lösungen ausprobiert, aber ich habe es geschafft, nur zwei Anschlüsse mit einer temporären Variablen:Geben Sie die Popupmenüauswahl in MATLAB mit einer Codezeile zurück
Drei Linien:
list=get(handles.popupmenu1,'String');
val=get(handles.popupmenu1,'Value');
str=list{val};
Zwei Linien:
temp=get(handles.popupmenu1,{'String','Value'});
str=temp{1}{temp{2}};
Kann es jemand rasieren unten zu ein?
PS, es ist ein dynamisches Menü, so kann ich nicht einfach get(handles.popupmenu1,'Value')
verwenden und die String-Komponente insgesamt ignorieren.
Ich bin mir nicht sicher, warum du sho willst rten Sie es auf eine Zeile, es sei denn, Sie sind einfach neugierig, wie es gemacht werden könnte. Die dreizeilige Option ist am klarsten und am einfachsten zu verstehen und ist diejenige, die ich in jedem von mir geschriebenen Code verwenden würde. – gnovice
@gnovice Ich habe mich hauptsächlich gefragt, ob es gemacht werden kann. Vielleicht eine Mischung aus Neugier und Ärger bei MATLAB dafür, dass man kein Feature hat, um es mit einem Anruf zu tun. – Doresoom