|
|
hObject, eventdata, handles --Was ist das eigentlich???--- |
|
moni1208 |
Forum-Newbie
|
|
Beiträge: 9
|
|
|
|
Anmeldedatum: 12.03.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.07.2008, 00:07
Titel: hObject, eventdata, handles --Was ist das eigentlich???---
|
|
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
|
|
|
|
|
outsider |
Forum-Meister
|
|
Beiträge: 806
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: München
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 29.07.2008, 08:27
Titel:
|
|
|
|
|
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? Denn sonst weiss ich nicht, was Du da machst...
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
|
|
|
moni1208 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 9
|
|
|
|
Anmeldedatum: 12.03.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.08.2008, 11:03
Titel:
|
|
|
|
bluesaturn |
Forum-Anfänger
|
|
Beiträge: 42
|
|
|
|
Anmeldedatum: 06.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.03.2009, 15:35
Titel:
|
|
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:
Später werden Sachen wie
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
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|