Verfasst am: 12.10.2011, 14:33
Titel: Werte werden in Listbox immer überschrieben
Hey Leute, bin Matlap Anfänger und hänge gerade über einem Problem. Und zwar möchte ich mit 4 EditText Feldern (Tags: data_text, x_data, y_data, target_data) in einer Gui die eingegebenen Strings in einer Listbox untereinander hineinschreiben lassen. Allerdings überschreibt mir der neue Wert bei Betätigung eines EditText Feldes jedes Mal den alten.
Folgender Code für ein EditText feld (alle 4 gleich)
finde ich einen sehr lustigen Tippfehler...
Ich glaube Meister_Lanz meint, dass alle 4 Editfelder den gleichen Callback haben... Versuche mal soetwas in deinem Editfeldcallback:
Code:
ifisempty(get(hObject,'String'))
uiwait(msgbox('Bitte einen Wert eingeben!','Falsche Eingabe','help','modal')) set(hObject,'String','Fehler') uicontrol(hObject) else
newstr = get(hObject,'String');
strlist = get(handles.listbox1,'String');
ifisempty(strlist) set(handles.listbox1,'String',{newstr}) else if ~iscell(strlist)
strlist = {strlist};
end
strlist(end+1) = {newstr};
set(handles.listbox1,'String',strlist) end set(hObject,'String','') end
Was mich gerade irritiert ist, dass wenn man im Guide ein Editfeld erstellt und den String (also die Property des Objektes) nicht editiert, bekommt man mit iscell(get(hObject,'String')) im Callback des Editfeldes n true zurück. Bearbeitet man den String im Inspector dann erhält man ein false also kein cell. Ist das ein Bug oder gewollt? Ich denke mal, dass keiner beim Starten seiner GUI "Edit Feld" in einem gleichnamigen stehen haben möchte aber seltsam ist es dennoch...
Meine Testversion 2011a 64 Bit win7
Greetings
Marco
Meister_Lanz
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 13.10.2011, 13:10
Titel:
Nun ja, mit dem "alle 4 gleich" meine ich lediglich dass der Code der anderen Editfelder genau gleich ist, eben nur jeweils mit den eigenen Tags versehen.
Auf jeden Fall erstmal vielen Dank für die Infos, habe das Problem mittlerweile anderweitig beseitigen können, aber ich werde dennoch mal versuchen, das Geschriebene umzusetzen.
Hobbla, und WAS für ein Tippfehler man man man...Matla!!b!!
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.