Verfasst am: 09.07.2010, 12:35
Titel: handles mit uimenu übergeben
Hallo,
ich habe eine Listbox mit einträgen.
Wenn ich mit der rechten Maustaste auf einen Eintrag klicke will ich per Menu die zum Eintrag hinterlegten Daten in einem Plot darstellen.
Jedoch wird bei dem uimenu-Befehl die handles der Figure nicht mit übergeben.
Liegt es daran das ich die Erstellung der Menüs bei der ERstellung der Listbox durchführe? Danke für jegliche Hilfe.
Hier ist der Code:
return
Code:
function lbMechStep_CreateFcn(hObject, eventdata, handles)
ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
%%% creating the menu clc;
hcmenu = uicontextmenu;
item1 = uimenu(hcmenu, 'Label', 'plot data', 'callback', {@plotJumpData, handles});
set(hObject, 'UIContextMenu', hcmenu)
der Befehl guidata(hObject, handles); sollte Dir helfen können.
Er erfordert auch, dass Du vor dem Ende einer Funktion diese Zeile einfügst, damit die Werte, die hier verarbeitet werden, nicht verloren gehen.
Und er erfordert, dass die Daten als Substruktur in der Struktur handles gespeichert werden.
Code:
a = get(irgendwas);
b = get(wasanderes);
handles.b = b;
guidata(hObject, handles)
a geht verloren, b hat überlebt und kann mittels c = handles.b; erhalten werden. Nur musst Du sicher stellen, dass zum Abfragezeitpunkt handles.b auch existiert.
HTH,
yankemen
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.