function h = meldung(hObject, eventdata, h)
val=get(h.popup1,'Value');
liste=get(h.popup1,'String');
sel=0;
temp=liste{val};
switch temp
case 'Sin'
sel=1;
case 'Cos'
sel=2;
case 'Tan'
sel=3;
endfunction test
clearall;
clc;
scrsz = get(0,'ScreenSize');
function h = meldung(hObject, eventdata, h)
val=get(h.popup1,'Value');
liste=get(h.popup1,'String');
sel=0;
temp=liste{val};
switch temp
case 'Sin'
sel=1;
case 'Cos'
sel=2;
case 'Tan'
sel=3;
end
bitte vermeide Doppelpostings,
bitte verwende einen aussagekräftigen Titel,
bitte bring das Code-Durcheinander in Ordnung,
bitte sag dann auch, was Du machen willst und was nicht klappt.
Der Code aus Deinem zweiten Posting funktioniert bei mir.
_________________
Warning: UICONTROL received a property/value pair for 'Units' after 'Position':
For backwards compatibility, the position will be interpreted in the
new units. In the next MATLAB release, UICONTROL will interpret
a 'position' value in the default units and any subsequent 'units'
property/value pair will cause the initial position to be translated
into the specified units
Sagt im Prinzip nichts anderes aus als dass man nicht die Eigenschaft 'Units' nach der Eigenschaft 'Position' setzen sollte.
Was bei dir allerdings nicht funktioniert ist die Callback-Funktion. Nämlich versuchst du je nach String deines Popupmenus unterschiedliche Sachen zu plotten. Du vergleichst aber in deiner Funktion den String des Objekts, das die Callback-Funktion aufruft. Dieser String ist allerdings "berechnen". Du musst folgende Zeile umschreiben:
Code:
% falsch
liste = get(hObject,'String');
% richtig % Alle Strings
liste = get(h.popup1,'String');
% momentanen Wert
liste = liste{get(h.popup1,'Value')};
Du kannst natürlich auch den Value-Wert direkt in eine Switch-Anweisung packen.
Beachte ausserdem dass "h.popup1" VOR dem Setzen der Callback-Funktionen definiert sein muss (die Attribute können auch später gesetzt werden).
MfG
MfG
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.