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

Berechneten Plot in Gui über axes anzeigen

 

Homunkulus
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 07.11.11
Wohnort: Berlin
Version: 7.7.0 R2008b
     Beitrag Verfasst am: 07.11.2011, 08:13     Titel: Berechneten Plot in Gui über axes anzeigen
  Antworten mit Zitat      
Hallo,

ich bin ein absoluter GUI-Neuling und habe folgendes Problem:

Ich habe ein GUI erstellt welches nach KLick auf den "RUN"-Button diverse m.files ausführt, dabei einen plot erzeugt und diesen als Bild (.png) speichert.

Wie man Bilder in GUIs einfügt habe ich verstanden und das funktioniert auch; nur eben mit diesem erstellten Bild nicht. Bedeutet, dass Bild existiert erst nach dem Ausführen des GUI im enstprechenden Ordner.


Also hinter diesem Button

Code:

function pushbutton1_Callback(hObject, eventdata, handles)
 


werden m.files aufgerufen, die letztenendes den Plot und das Bild erzeugen. Gleichzeitig soll im axes14 dann das erzeugte Bild dargestllet werden. Bedeutet Nachfolgendes steht auch in der Pushbuttonfunktion.

Code:


axes(handles.axes14);                  % Auswahl des entsprechenden Axes-Objekts
 Graphik=imread(strcat(name,'.png'));        % Einlesen der Grafik
 image (Graphik);                             % Grafik ausgeben,
axis image;                             % Grafik entzerren
axis off


Ich bekomme als Fehlermeldung:
"??? Reference to a cleared variable handles."

Mir ist bewusst, dass ich irgendwo die handles gelöscht habe, finde aber keine andere Möglichkeit das Bild darzustellen. Weshalb klappt das Darstellen, nicht wie bei den anderen Bildern, die von beginn an zu sehen sind?

Ich hoffe, dass mir weitergeholfen werden kann...


Grüße
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 07.11.2011, 09:02     Titel: Re: Berechneten Plot in Gui über axes anzeigen
  Antworten mit Zitat      
Hallo Homunkulus,

Es sollte einfach sein, auf das Löschen der Variable "handles" zu verzichten. Hast Du vielleicht ein (praktisch immer) überflüssiges "clear all" eingefügt?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Homunkulus
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 07.11.11
Wohnort: Berlin
Version: 7.7.0 R2008b
     Beitrag Verfasst am: 07.11.2011, 09:32     Titel:
  Antworten mit Zitat      
Hallo Jan,

ich habe ein clear all aus einem meiner aufgerufenen m.files gelöscht und nun erhalte ich folgenen Fehler:

"??? Error using ==> axes
Invalid object handle"

...habe aber für die axes14 eine function erzeugt.

Ich verstehe wahrscheinlich die ganue Funktion der Handles nicht, trotz Hilfe.

Weshalb funktioniert diese Zeile nicht?

Code:
axes(handles.axes14);
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 07.11.2011, 12:16     Titel:
  Antworten mit Zitat      
Hallo Homunkulus,

"handles" ist ein Struct, den man per GUIDATA-Funktion im GUI speichern kann. Darain kann man alles mögliche speichern, z.B. die Handles der GUI-Elemente, z.B.:
Code:
handles.axes14 = axes;
guidata(FigureHandle, handles);

Wenn später der Zugriff auf "handles.axes14" nicht mehr funktioniert, wurde das AXES-Objekt wahrscheinlich gelöscht.

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.