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

Bekomme keine handles aus bestimmter Funktion heraus

 

gasmeister
Forum-Anfänger

Forum-Anfänger


Beiträge: 27
Anmeldedatum: 12.10.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.11.2010, 14:30     Titel: Bekomme keine handles aus bestimmter Funktion heraus
  Antworten mit Zitat      
Hi,

hier erstmal ein Teil des Codes:

Code:
function [status, m_line] = plot_selection(handles)

...
y=...
...

end

status = 1;


Ich hab mal nicht alles kopiert, da ich annehme, es liegt an der Art der Funktion. Innerhalb der Funktion wird nur ein bisschen Zeug berechnet, beispielsweise das y. Die Funktion stammt aber aus einem fremden Programm, weshalb ich nicht weiß, was an dieser besonders ist.

Nun zum eigentlichen Problem:
Normalerweise kann man ja zB bei einer pushbutton/slider/popup menü Funktion einen Wert über beispielsweise

handles.y = y

ganz einfach in diesen handles-Speicher holen, wenn man es an anderer Stelle benötigt. Nur bei dieser Funktion, die ich hier habe

function [status, m_line] = plot_selection(handles)

funktioniert das nicht.
Möchte ich dann handles.y in einer anderen Funktion aufrufen, kommt eine Fehlermeldung:

Code:
??? Reference to non-existent field 'y'.

Error in ==> eagle>matrixerzeugen_Callback at 1974
handles.y

Error in ==> gui_mainfcn at 75
        feval(varargin{:});

Error in ==> eagle at 24
    gui_mainfcn(gui_State, varargin{:});

??? Error using ==> eagle('matrixerzeugen_Callback',gcbo,[],guidata(gcbo))
Reference to non-existent field 'y'.

??? Error while evaluating uicontrol Callback


Gibt es da Abhilfe?

mfG
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 10.11.2010, 16:32     Titel:
  Antworten mit Zitat      
Hallo

die geänderten handles müssen gespeichert, zurückgeben oder aktualisiert werden.
Habe noch nicht ganz verstanden, werden in der Funktion handles verändert?
Wenn ja, da kann man doch die handles zurückgegeben.
Private Nachricht senden Benutzer-Profile anzeigen
 
gasmeister
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 27
Anmeldedatum: 12.10.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.11.2010, 16:54     Titel:
  Antworten mit Zitat      
Hallo,

In der Funktion werden handles einglesen und weiterverarbeitet, beispielsweise zu dem Wert y. Nun möchte ich neue handles erzeugen, damit ich auf den Wert y auch von einer anderen Funktion aus zugreifen kann.

Nur wenn ich über

handles.y = y

schreiben und in der anderen Funktion über

y = handles.y

das y wieder nutzen will, kommt oben genannte Fehlermeldung.

Bei anderen Funktionen funktioniert das aber auf die Art und Weise.

mfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 12.11.2010, 14:57     Titel:
  Antworten mit Zitat      
Hallo,

mir scheint, dass du die handles (wie danny schon sagte) nicht aktualisierst.

Pack doch mal:

Code:

guidata(hObject,handles);
 

an das Ende dieser Funktion (pushbutton/slider/popup menü Funktion, um was es sich nun auch dabei handelt). Klappt es nun?

MFG

Sco
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.