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

hObject, eventdata, handles --Was ist das eigentlich???---

 

moni1208
Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 12.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2008, 01:07     Titel: hObject, eventdata, handles --Was ist das eigentlich???---
  Antworten mit Zitat      
Hallo alle zusammen,

ich programmiere zwar schon seit ein paar Wochen mit Matlab Guide,
aber bisher muss ich leider gestehen, das ich nicht so recht verstehe,
was eigentlich handles, hObject und eventdata wirklich bedeuten.

Was ich bisher nur gefunden habe:

hObject: Handles zur Komponente, (z.B. eines Push Buttons)
eventdata: wird nicht verwendet
handles: struct mit Daten des Fensters und weiteren Daten des Anwenders

Das bringt mir nichts.

Kann mir da jemand helfen???

Viele Grüße
aus Hamburg
Moni1208
Private Nachricht senden Benutzer-Profile anzeigen


outsider
Forum-Meister

Forum-Meister


Beiträge: 806
Anmeldedatum: 03.09.07
Wohnort: München
Version: R2012b
     Beitrag Verfasst am: 29.07.2008, 09:27     Titel:
  Antworten mit Zitat      
Zitat:
ich programmiere zwar schon seit ein paar Wochen mit Matlab Guide, aber bisher muss ich leider gestehen, das ich nicht so recht verstehe, was eigentlich handles, hObject und eventdata wirklich bedeuten.

bist Du Dir sicher, dass Du dabei wirklich mit MATLAB und GUIDE programmierst? Shocked Denn sonst weiss ich nicht, was Du da machst... Smile

ok - Spass bei Seite.
hObject - ist der Handle des Objekts von dem der Callback ausgelöst wird. Dieser ist selbstverständlich unterschiedlich von einer Funktion zu anderen. Kann auch durch den Befehl GCBO ersetzt werden.
eventdata - Manche Callbacks verwenden diesen, aber defaultmässig(!) in GUI nicht. Du kannst aber selbst festlegen, was im Eventdata übertragen wird. Nur ein einfacher Beispiel. Du hast mehrere Buttons in der GUI und hast alle Callbacks auf eine und die gleiche Callback-Funktion gelinkt. Nun müsstest Du aber in der Funktion unterscheiden was kommt woher. Das wird Dir nun leichter fallen, wenn Du jedem Button unterschiedliche Eventdata-Werte überträgst (diese kannst Du direkt per GUIDE Inspector setzen) und diese dann im Callback auswertest.
handles - das ist ein Struct. Dieser beinhaltet alle Handles von (fast) allen Objekten innerhalb Deines GUI. Für den Fall, wenn Du fragst wozu Du das brauchst komme ich gleich mit dem Beispiel.
Angenommen Du hast drei Axes in Deiner GUI und willst in eine bestimmte rein zeichen. Mit Hilfe des Handle-Strukts kannst Du nun die Axes "aktivieren" für die ein Plot bestimmt ist.

Ansonsten rate ich Dir die MATLAB Doku immer parat zu haben und zumindest den "Getting Started"-Teil über GUI's unter die Lupe zu nehmen.


MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
moni1208
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 12.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.08.2008, 12:03     Titel:
  Antworten mit Zitat      
DANKE SCHÖN!!!
Private Nachricht senden Benutzer-Profile anzeigen
 
bluesaturn
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 06.03.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.03.2009, 16:35     Titel:
  Antworten mit Zitat      
Bzgl. dieser handles hätte ich auch einmal eine Frage. Ich dachte, daß hanles hier die figure des GUIs sei?

Mein GUI ist in einer Funktion Auswertung.m und beginnt mit:
Code:

fenster=figure('HandleVisibility','on');
bildsize=[30 30 1100 900];
set(fenster,'units','pixels','position',bildsize,'Visible','on','tag','my_gui');
 

Später werden Sachen wie
Code:

function plot1_Callback(obj,ed,fenster)
end
 

eingebunden. Aber 'fenster' ist immer leer bzw. unassigned bei der Übergabe.
Könnte mir bitte jemand erklären wieso? Das Fenster suche ich jetzt immer mit findobj('tag','my_gui').

Vielen Dank.
Blue
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 - 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.