Verfasst am: 18.09.2009, 14:38
Titel: Bestehendes Problem mit Pop-up in GUI
Hallo zusammen,
ich schon wieder... aber diesesmal als registrierter User
Es geht immer noch um mein zweites Problem und zwar das mit dem Popup
Zum Problem:
Die pop-up Menüs funktionieren soweit gut... aber... wenn ich einen Punkt wähle erscheint dieser auch kurz im weißen Feld. Wenn jetzt aber wieder woanders hin geklickt wird verschwindet das 'wort' wieder und das Pop-up menü Feld ist wieder weiß.
Die Eingabe bleibt zwar gespeichert doch ist das dann mal später ziemlich verwirrend wenn das Feld Kurz nach dem Wählen eines Menüpunktes wieder weiß wird...
Vielen Dank schon mal
_________________
Wartet mal...
Ich geh schnell Klebeband holen um die Metallstangen zusammen zu leimen.
das ist ja mal ein interessantes Problem. sieht ja fast nach einem Bug aus, wüsste nicht wie man soetwas mit einem Programmierfehler erreicht...
Dennoch, vielleicht kannst du ja mal deinen Code posten, das würde ich ja gern mal nachvollziehen!
Bist du sicher, dass kein Inhalt überschrieben wird?
Da muss du einfach debuggen, z.B
setze in diesem Pushbutton-Callback ein Breakpoint,
und gehe schrittweise jede Zeile durch,
verschwindet da trotzdem der Inhalt
Danke erstmal für die Antworten...
Wie gesagt mir is das total Schleierhaft wie es dazu kommt. Aber hier mal eine Pop-Up Funktion 1:1 vom code heraus:
Code:
% --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: contents = get(hObject,'String') returns popupmenu1 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu1
% Determine the selected data set.
str = get(hObject, 'String');
val = get(hObject,'Value');
% Set current data to the selected data set. switch str{val};
case '9600' % User selects case 1. set(handles.robot,'BaudRate',9600) case '38400' % User selects case 2. set(handles.robot,'BaudRate',38400) case '115200' % User selects case 3. set(handles.robot,'BaudRate',115200) end % Save the handles structure. guidata(hObject,handles)
ich hoff es wird jemand schlau daraus...
Zur kurzen erklärung: Es wird ein Serial Objekt erstellt und anhand des Pop-Up menüs das ich hier gepostet hab kann man die Baudrate ändern.
Was auch noch dazu gehört, aber wahrscheinlich nicht mehr relevant ist weil das von Matlab generiert wird (CreateFcn):
Code:
% --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
Das kann ich machen...
Aber das Problem des 'Verschwindens' taucht ja nicht nur beim betätigen des Push-Buttons auf, sondern auch schon beim wegklicken.
Das Problem passiert übrigents in allem meinen GUIs. Es handelt sich also nicht spezifisch um ein Problem bei dieser aktuellen GUI.
Ich hab mir gedacht, dass ich vielleicht irgendwas nachträglich verändere, wenn die Option gesetzt wurde, dass das feld dann beim wegklicken wieder weiß färbt..
hier der Push Button Callback
Code:
% --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
move(handles.Position);
Ich hab das Problem gelöst!
Die Lösung ist ebenso einfach wie bescheuert ...
So ich hab meine GUIs auf einen anderen Rechner laufen lassen und siehe da... alles passt und funktioniert. Dann ist mir eingefallen dass ich mal vor einiger Zeit (ok is schon etwas länger her... ) in meinen Desktopn Themes rumgepfuscht habe...
Das hat sich anscheinend auf die Darstellung der Pup-up Menüs bis heute ausgewirkt...
Die Lösung:
--> Desktop Themes und Farben auf default und schon kann ich meine 'Optionen' im Pop-Up Menü sehen
Danke nochmal an allen die sich auch mit dem Problem beschäftigt haben
_________________
Wartet mal...
Ich geh schnell Klebeband holen um die Metallstangen zusammen zu leimen.
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.