WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Wertübergabe in Feldern speichern

 

kingkamali

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.03.2010, 15:25     Titel: Wertübergabe in Feldern speichern
  Antworten mit Zitat      
Hallo Leute,

und zwar habe ich eine GUI mit 3 Edit Text Feldern in die man jeweils x,y, und z koordinaten eingeben kann. Daneber ist ein Button, durch Button Klick sollen die Werte in ein X-Feld für die x-Werte, und so weiter. Nach dem die Koordinaten gespeichert wurden sollen die edit felder wieder leer sein für die nächste eingabe. Durch weiteres klicken sollen die neuen werte immer zu den alten hinzugefügt werden.

Code:

function add_coord_Callback(hObject, eventdata, handles)
% hObject    handle to add_coord (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
x = str2double(get(handles.x_eingabe,'String'));
y = str2double(get(handles.y_eingabe,'String'));
z = str2double(get(handles.z_eingabe,'String'));
guidata(hObject, handles);
 


habt ihr vielleicht eine Idee ?

danke


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 03.03.2010, 15:40     Titel:
  Antworten mit Zitat      
Hallo
z.b so jedesmal Array/ Matrix erweitern
Code:


function add_coord_Callback(hObject, eventdata, handles)
x = str2double(get(handles.x_eingabe,'String'));
y = str2double(get(handles.y_eingabe,'String'));
z = str2double(get(handles.z_eingabe,'String'));

if isfield(handles, 'Coordinates')
  handles.Coordinates=vertcat(handles.Coordinates,[x y z]);
else
  handles.Coordinates=[x y z];
end
set(handles.x_eingabe,'String','');
set(handles.y_eingabe,'String','');
set(handles.z_eingabe,'String','');

guidata(hObject, handles);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
kingkamali

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.03.2010, 15:51     Titel:
  Antworten mit Zitat      
danke für die schnelle antwort.

Wie kann ich jetzt auf meine Daten zugreifen, also auf die jeweiligen Werte`?

Wie kann ich noch einen zähler integrieren, ich habe noch ein static text feld, dass jedes mal nach dem Klick auf den Button um eins hoch gezählt wird.
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 03.03.2010, 17:23     Titel:
  Antworten mit Zitat      
Hallo,

ich weiß ja nicht, in welcher Form du später deine Daten erwartest?
Deswegen kannst du das Ablegen der Daten für dich ganz individuell anpassen.
Code:

% auch z.B so
if isfield(handles, 'x')
  handles.x=vertcat(handles.x, x );
else
  handles.x=x;
end

if isfield(handles, 'y')
  handles.y=vertcat(handles.y, y );
else
  handles.y=y;
end

if isfield(handles, 'z')
  handles.z=vertcat(handles.z, z );
else
  handles.z=z;
end

 



Wenn du so übernommen hast, wie ich oben vorgeschlagen habe, dann
kannst so zugreifen,
Code:


x_werte = handles.Coordinates(:,1)
y_werte = handles.Coordinates(:,2)
z_werte = handles.Coordinates(:,3)
 


oder so:

Code:

all_werte      = num2cell( handles.Coordinates,[1,3]);
[x_werte y_werte z_werte] = deal(all_werte {:})
 



den Zähler kannst du auch in static text feld speichern, z. b. in UserData Eigenschaft
Code:

function add_coord_Callback(hObject, eventdata, handles)

zaehler = get(handles.static,'UserData');
if isempty(zaehler)
  zaehler =0
end

zaehler=zaehler+1;
set(handles.static,'UserData',zaehler)
set(handles.static,'String',num2str(zaehler));

 
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan*
Forum-Century

Forum-Century


Beiträge: 178
Anmeldedatum: 06.11.09
Wohnort: ---
Version: R2007b
     Beitrag Verfasst am: 03.03.2010, 17:45     Titel:
  Antworten mit Zitat      
Hi,

ich habe mich auch kürzlich erstmalig mit MATLAB GUIs auseinandergesetzt, und kann dir zum Thema Kommunikation innerhalb einer GUI nur folgende Seite der Doku ans Herz legen:

http://www.mathworks.com/access/hel.....ating_guis/f5-998352.html

Gruß Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.