Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-12-2011, 22:54   #1 (permalink)
Neuer User
 
Registriert seit: Feb 2011
Beiträge: 15
Eventlistener entfernen

Hallo,

Ich habe eine längere Funktion geschrieben, in welcher ich mehrere Evenlistener verwende.

An sich entferne ich diese auch direkt wieder, wenn Sie nicht mehr benötigt werden.

Jedoch hat sich hier irgendwo ein Fehler eingeschlichen und auf einem Objekt, welches keinen Listener haben soll, ist nun einer vorhanden.

Ich werde hier keinen Code posten, dies macht wenig Sinn, da er aus Mangel an Zeit und Erfahrung recht ungeordnet und auch ziemlich viel ist.


Mit geht es sowieso nur um allgemeine Dinge:

- Kann ich die Namen vorhandener Eventlistener auf einem MC abfragen?
- Kann ich Eventlistener auf einem MC entfernen ohne den Namen von ihnen zu wissen?

Geändert von Joralin (11-12-2011 um 22:56 Uhr)
Joralin ist offline   Mit Zitat antworten
Alt 12-12-2011, 00:00   #2 (permalink)
+ Zimt & Zucker
 
Registriert seit: Mar 2006
Ort: hinterm Mond gleich links
Beiträge: 2.040
Zitat:
Zitat von Joralin Beitrag anzeigen
Ich werde hier keinen Code posten, dies macht wenig Sinn, da er aus Mangel an Zeit und Erfahrung recht ungeordnet und auch ziemlich viel ist.
Versuche doch den Code auf ein gewisses Maß zu reduzieren.
Die Teile in denen listener hinzugefügt und entfernt werden, wären sicherlich von Interesse.
Du brauchst keine Angst zu haben. Das schlimmste, das dir passieren kann, ist, das keiner antwortet.
__________________
anbei Grüße vom milchreis: Viva la [Silb]
"Selbst wenn uns nur noch der Zynismus treibt, wir werden trotzdem einfach immer weiter gehen!"

[Von null auf Flash in einem Klick.] <<< klick
milchreis ist offline   Mit Zitat antworten
Alt 12-12-2011, 00:07   #3 (permalink)
Neuer User
 
Registriert seit: Feb 2011
Beiträge: 15
Ist leider wirklich nicht möglich, es sind insgesamt etwa 600 Zeilen in der absoluten Rohfassung, da das wichtigste herauszusuchen dauert ewig.

Eigentlich sind die allgemeinen Fragen die ich gestellt habe auch viel wichtiger, wenn ich den Eventlistener irgendwie herunter, oder ersetzt bekomme ist alles in Ordnung.


Achja, noch eine ergänzende Frage:

Ersetzt ein zweiter Eventlistener auf einem Movieclip einen bereits vorhandenen oder sind dann 2 vorhanden?
Joralin ist offline   Mit Zitat antworten
Alt 12-12-2011, 00:24   #4 (permalink)
NCC 1701 D
 
Benutzerbild von speedjunkie
 
Registriert seit: Oct 2009
Ort: Metropolregion Hamburg
Beiträge: 586
ActionScript:
  1. loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
  2.  
  3. function ioErrorHandler(e:IOErrorEvent):void
  4. {
  5.     trace("IO-Fehler: Daten konnte nicht geladen werden.");
  6. }
  7.  
  8. trace( loader.hasEventListener(IOErrorEvent.IO_ERROR) /* Rückgabewert vom Typ :Boolean */); //true oder false
  9.  

Der Fehler sollte schnell zu finden sein. Auf welches Ereignis wird unerwartet reagiert?

Du könntest ein algo schreiben der Deine DisplayObjects abgrast überprüfen is MovieClip und überprüfen hast Du diesen oder diesen EventListener.

Finde ich jedoch nicht effektiv!

Ist vielleicht ein bisschen zu urig aber Du kannst Dein Programm für Dich als Diagramm darstellen und durchgehen.

Nassi-Shneiderman-Diagramm
__________________
just be Daniel
JUNK FOOD: JavaScript Core Reference
speedjunkie ist offline   Mit Zitat antworten
Alt 12-12-2011, 00:28   #5 (permalink)
NCC 1701 D
 
Benutzerbild von speedjunkie
 
Registriert seit: Oct 2009
Ort: Metropolregion Hamburg
Beiträge: 586
Zitat:
Zitat von Joralin Beitrag anzeigen
Ersetzt ein zweiter Eventlistener auf einem Movieclip einen bereits vorhandenen oder sind dann 2 vorhanden?
Nein wenn Du eine EventListener MouseEvent.CLICK Methode a registriert hast und dann ein EventListener MouseEvent.CLICK Methode b.

Hast Du zwei Methoden die auf das selbe Ereignis reagieren usw.
__________________
just be Daniel
JUNK FOOD: JavaScript Core Reference
speedjunkie ist offline   Mit Zitat antworten
Alt 12-12-2011, 02:04   #6 (permalink)
Keine Panik
 
Registriert seit: Apr 2010
Ort: Düsseldorf (im ernst)
Beiträge: 1.867
Zitat:
Zitat von Joralin Beitrag anzeigen
- Kann ich die Namen vorhandener Eventlistener auf einem MC abfragen?
- Kann ich Eventlistener auf einem MC entfernen ohne den Namen von ihnen zu wissen?
kurz: Nein.
wie speedjunkie schon geschrieben hat kannst du über hasEventListener zwar überüfen, welches Event noch belegt ist, aber du hast keine Möglichkeit an die Listener-Funktion zu kommen, um sie zu entfernen.
zumindest nicht von Haus aus.

Zitat:
Ist leider wirklich nicht möglich, es sind insgesamt etwa 600 Zeilen in der absoluten Rohfassung, da das wichtigste herauszusuchen dauert ewig.
das macht auf mich den Eindruck, als ob du die Übersicht in deinem eigenen Code verlierst. Vielleich wäre es sinvoll, einige teile des codes in andere Klassen auszulagern !?

Und 600 Zeilen find ich viel. ich glaub ich hatt bisher erst ein- zweimal so viel Code in einer einzigen Klasse.
__________________
greetz Thomas

plz RTFM & Coding Conventions
thomas_E 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
EventListener entfernen art0815 ActionScript 3 1 18-07-2011 23:25
MovieClip in EventListener entfernen phareon ActionScript 3 2 19-02-2011 22:36
EventListener entfernen jeahbaby ActionScript 3 11 07-07-2010 11:08
Eventlistener in Objektklasse entfernen Shuggahnaut ActionScript 3 8 17-06-2010 10:53
EventListener entfernen DjMichi ActionScript 3 3 31-01-2008 13:39


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

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


Copyright ©1999 – 2012 Marc Thiele