Verfasst am: 02.09.2010, 12:03
Titel: Bild in axis anzeigen
Hallo
ich habe mittels einer Gui eine m-file erzeugt in der ich meine eigentliches Programm geschrieben habe. Über diese GUI hat der Anwender die Möglichkeit mehrere Anwendungsfälle auszuwählen.
Nach dem drücken des Start Buttons erscheinen diverse helpdlg's.
Um das ganze jetzt grafisch zu verschönern möchte ich jedoch anstelle von helpdlg's ein neues figure mit mehreren axis verwenden und in diesen axis unterschiedliche jpg's anzeigen.
Habe das Problem das ich aus meiner m-file nicht auf das neue (also das zweite Figure zugreifen kann.
Habe es mit dem set(handles.(figure2/Tag) Begriff versucht.
Kann mir da jemand weiterhelfen?
Danke und Gruß
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 02.09.2010, 13:45
Titel:
Hat keiner eine Idee?
Hab es jetzt auch mal mit einer Hilfsvariablen versucht
C=figure(figure2);
C=imread...
image(C);
wobei figure2 das neue Figure ist in dem ich die Bilder anzeigen will.
DAs funktioniert zwar auch schon nur möchte ich auf unterschiedliche AXES zugreifen
nur wenn ich es mit figure(figure2(Tag)); versuche bekomme ich eine Fehlermeldung mit undefindes function or variable Tag
axes(handles.axes1)% activate axes1 in Gui1 image(X), colormap(map)% show image in axes
h = Gui2; % open Gui2 and save figure handles
gui2_data = guidata(h); % save Data from Gui2
axes(gui2_data.axes1)% activate axes1 in Gui2 image(X), colormap(map)% show image in axes
In meinem Beispiel enthalten beide Guis jeweils eine "Axes".
Falls der Inhalt der Axes im Gui2 immer gleich ist, kannst du natuerlich auch einfach in der opening function des Gui2 deine axes nach gewohnten Muster (axes(handles.axes1)...image(X)) zum Anzeigen der Bilder nutzen. Dann reicht es nur die Gui2 aus der Gui1 aufzurufen. Somit ersparst du dir die Interaktion zwischen den Guis.
MFG
Sco
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 02.09.2010, 17:57
Titel:
So richtig funktioniert das leider noch nicht.
Ich habe in meiner m-file aus Gui1 eine for Funktion und nur wenn die erfüllt ist soll er mir ein bestimmtes Bild in einem der Axis aus GUI2 anzeigen.
Ich habe es jetzt mal mit
Bild=guidata(Ausgabe) %Ausgabe ist der Titel von GUI2
axes(Bild.test1) %test1 ist eine der in GUI2 eingefügten axes
C=imread('C:\...')M
image(C)
versucht und bekomme die Fehlermeldung
??? Reference to non-existent field test1
Habe ich da irgendwo einen gedanklichen Fehler gemacht?[/code]
dann wird wohl in der Gui2 keine Axes mit dem Name (Tag) test1 vorhanden sein...?
Was steht denn bei "Tag", wenn du deine axes "test1" in der Gui2 mit dem property inspector oeffnest ?
Also falls du da nix geaendert hasst, werden die axes standartmaessig mit axes1, axes2 .... axesX bezeichnet.
MFG
Sco
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 02.09.2010, 18:09
Titel:
Hi
danke hab grad noch einmal die Tags übergrüft. Hatte TEST anstatt wie in der m-file test geschrieben.
Jetzt funktionierts
Danke
Options and Permissions
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.