Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-12-2011, 17:53   #1 (permalink)
squarepants™
 
Benutzerbild von cargos
 
Registriert seit: Nov 2009
Beiträge: 181
extends EventDispatcher

hi,

ich muss in diese klasse ein event dispatcher einbauen:

Code:
public class FileSun extends Sun
so bekomm ich einen error:

Code:
public class FileSun extends Sun extends EventDispatcher
wie gehts richtig?
l.g.
cargos
cargos ist offline   Mit Zitat antworten
Alt 07-12-2011, 18:02   #2 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Mehrfachvererbung geht nicht.
Sun muss EventDispatcher extenden und FileSun wiederum Sun.
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 07-12-2011, 18:02   #3 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Eine Klasse kann immer nur eine Klasse erweitern (alles andere gäbe auch ein ziemliches Chaos).

Wenn FileSun also bei Sun erben muss, solltest Du dafür sorgen, dass bereits Sun direkt oder indirekt (z.B. über Sprite) bei EventDispatcher erbt.

Alternativ könntest Du auch das Interface IEventDispatcher implementieren (eine Klasse darf ja beliebig viele Interfaces einbinden). Allerdings müsstest Du dann auch alle dort definierten Methoden selbst implementieren...
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!
Martin Kraft ist offline   Mit Zitat antworten
Alt 07-12-2011, 18:07   #4 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.139
Zitat:
Zitat von Martin Kraft Beitrag anzeigen
Allerdings müsstest Du dann auch alle dort definierten Methoden selbst implementieren...
Was nur eine Delegation zu einer anderen EventDispatcher Instanz ist.
Omega Psi ist offline   Mit Zitat antworten
Alt 07-12-2011, 18:13   #5 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Zitat:
Zitat von Omega Psi Beitrag anzeigen
Was nur eine Delegation zu einer anderen EventDispatcher Instanz ist.
Nicht zwingend, aber sinnvollerweise...

Selbst das kann aber nicht so geübte Programmierer vor erheblich mehr Probleme stellen, als einfach die Vererbungsreihenfolge zu ändern...
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (07-12-2011 um 18:27 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Alt 07-12-2011, 18:36   #6 (permalink)
squarepants™
 
Benutzerbild von cargos
 
Registriert seit: Nov 2009
Beiträge: 181
danke für das feedback.

Zitat:
Zitat von Martin Kraft Beitrag anzeigen
Wenn FileSun also bei Sun erben muss, solltest Du dafür sorgen, dass bereits Sun direkt oder indirekt (z.B. über Sprite) bei EventDispatcher erbt.
Sun sieht so aus:
Code:
   public class Sun extends Sprite
wie bekommt man da jetzt den EventDispatcher rein?


bw: also ich möchte aus einer klasse eine function ansprechen die in der main timeline liegt.
ActionScript:
  1. private function loadImage(event:Event):void{
  2.     addToContainer()   
  3.         }

Geändert von cargos (07-12-2011 um 18:40 Uhr)
cargos ist offline   Mit Zitat antworten
Alt 07-12-2011, 18:46   #7 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Zitat:
Zitat von cargos Beitrag anzeigen
Sun sieht so aus:
Code:
   public class Sun extends Sprite
wie bekommt man da jetzt den EventDispatcher rein?
Wenn Sun die Klasse Sprite erweitert, musst Du Dich um nichts weiter kümmern, weil Sprite bereits indirekt bei EventDispatcher erbt:
Zitat:
Vererbung: Sprite > DisplayObjectContainer > InteractiveObject > DisplayObject > EventDispatcher > Object
Zitat:
Zitat von cargos Beitrag anzeigen
bw: also ich möchte aus einer klasse eine function ansprechen die in der main timeline liegt.
ActionScript:
  1. private function loadImage(event:Event):void{
  2.     addToContainer()   
  3.         }
Diese Funktion steht sicher nicht so in der Hauptzeitleiste (private ist nämlich eigentlich nur innerhalb von Klassen erlaubt), sondern wenn dann in der Dokumentklasse?!

Wie man von A auf B zugreift, hängt in AS3 immer davon ab, welche man Referenzen man zur Verfügung hat. In der Regel greift man auch nicht auf Klassen zu, sondern »nur« auf deren Instanzen.

Idealerweise sollte man sein Projekt so aufbauen, dass Objekte nur auf die Objekte direkt zugreifen, die ihnen untergeordnet sind (Prinzip: »Jeder kümmert sich um seinen eigenen ******!«). Wenn hingegen eine übergeordnete Instanz auf eine untergeordnete reagieren muss, sollte man das mit eine Event lösen...
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (07-12-2011 um 19:38 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
extends prüfen T.Decay ActionScript 3 5 02-09-2008 11:25
classA extends classB {} classB extends MovieClip geht nicht .. MF_ ActionScript 2 8 07-05-2007 07:28
extends MovieClip extends Elastic flash bier Softwarearchitektur und Entwurfsmuster 2 08-07-2005 12:05
extends zur laufzeit? Scrawer Softwarearchitektur und Entwurfsmuster 5 11-02-2004 13:39
extends x2 thorben.schmitt PHP und MySQL 1 09-01-2004 11:24


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele