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

verschachtelte GUIs

 

satoru
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 19.11.09
Wohnort: ---
Version: 7.8.0 (R2009a)
     Beitrag Verfasst am: 19.11.2009, 20:07     Titel: verschachtelte GUIs
  Antworten mit Zitat      
Hallo Leute,

ich bin in Sachen Matlab noch ein Anfänger und bin grad dabei eine kleine GUI zu programmieren. In der lese ich jetzt ein Bild ein, lasse es mir anzeigen, und lasse ein Grauwerthistogramm berechnen. Jetzt möchte ich, das ich auf einen Button klicke, und daraufhin ein Popup Fenster erschein, in den ich einen Wert eintrage. Im selben Fenster befindet sich noch ein Bestätigungsbutton, und wenn der geklickt wird, soll die "Haupt"-GUI den Wert, den ich in das Popup Fenster eingetragen habe, auslesen und vorerst mal nur auf der Konsole ausgeben.

Die Erzeugung des Popup-Fensters habe ich so gelöst:

Code:

figure('Name','Schwellwert','Tag','WertFig','MenuBar','none','Position', [200 200 150 90])
uicontrol('Style', 'edit','Tag','SWert','String', 'Schwellwert','Position', [25 45 100 25]);
uicontrol('Style','pushbutton','Tag','Berechnen','String','Berechnen','Position', [25 15 100 25]);
 

und das klappt auch soweit ganz gut... jetzt weis nich nur nicht, wie ich durch den "Berechnen"-Button, der HauptGUI den Wert mitteilen kann.
Hat jemand ne Idee?
Schonmal vielen Dank im vorraus,
Satoru
Private Nachricht senden Benutzer-Profile anzeigen


LittleX
Forum-Guru

Forum-Guru


Beiträge: 494
Anmeldedatum: 14.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.11.2009, 09:43     Titel:
  Antworten mit Zitat      
Hallo,

zum Datenaustausch gibt es verschiedene Möglichkeiten.
Wenn Du Dir die GUI sowieso selber zusammenprogrammierst, kannst Du auch sogenannte nested functions verwenden.
Mal ein kleines Beispiel mit zwei GUIs:

Code:

function mynestedgui

schwellwert = 0;
figure('Name','Hauptgui','Tag','HauptFig','MenuBar','none','Position', [400 400 350 200]);
schwellwert_txt = uicontrol('style','text','tag','stext','string',num2str(schwellwert),'position',[50,50,100,30]);

figure('Name','Schwellwert','Tag','WertFig','MenuBar','none','Position', [200 200 150 90])
schwellwert_edit = uicontrol('Style', 'edit','Tag','SWert','String', 'Schwellwert','Position', [25 45 100 25]);
berechnen_pb = uicontrol('Style','pushbutton','Tag','Berechnen','String','Berechnen','Position', [25 15 100 25],...
    'callback',@mycallback);

function mycallback(hObject, eventdata)
    schwellwert_str = get(schwellwert_edit,'string');
    schwellwert = str2double(schwellwert_str);
    set(schwellwert_txt,'string',schwellwert_str)
    disp(schwellwert)
end

end

 


Viele Grüße,

LittleX
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.02.2010, 12:52     Titel:
  Antworten mit Zitat      
wie macht man es denn ohne nestedguis?
Danke!

Simples Beispiel: Ich möchte ine neue Gui aufrufen und in dieser GUI einen Wert zur Verfügung haben, den ich in der GUI aus der ich die neue aufrufe iengelesen habe...
 
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 - 2024 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.