Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-06-2011, 15:00   #1 (permalink)
Padawan
 
Benutzerbild von Seebold
 
Registriert seit: Dec 2005
Ort: Hannover
Beiträge: 75
VideoEvents klappen nicht

Liebes Forum,

ich arbeite mit der FLV-Playback-Komponente und habe sie auf der Bühne instaziert. Das Video soll wie von einen Vorhang aufgedeckt werden, sobald es spielt. Der Zielrechner bekommt es jedoch nicht ruckelfrei hin, ein Element über das Video zu animieren, während die Film-Source eingestellt wird.

Nun möchte ich gerne eine Listener anbringen, der bescheid gibt, sobald die Source eingestellt ist. Dazu gibt es VideoEvent.Ready. Leider erhalte ich beim Kompilieren den Fehler
Zitat:
"Z1119: Zugriff auf eine möglicherweise nicht definierte Eigenschaft READY über einen Verweis mit statischem Typ Class".
Soll Mit AS3 und Air 2.7 funktionieren. Mein Code sieht so aus:
Code:
package de.fischhase.terminal {
    import flash.events.*;
    import flash.display.*;
    import fl.video.*;
    import fl.video.VideoEvent;

    public class cl_videocont extends MovieClip {

        public var player:FLVPlayback;
		
        public function cl_videocont() {
            this.addEventListener(Event.ADDED_TO_STAGE, Init);
        }

        public function Init() {
            arguments;
        	 addVideoplayer();
        }

        private function addVideoplayer() {	
            stage.addEventListener(CustomEvent.CUSTOM, onVideoFunc);
	 player = new FLVPlayback();
	 player.activeVideoPlayerIndex = 0;
	 player.autoPlay = true;
	 player.autoRewind = true;
	 player.width =  1080;
	 player.x = 200;
	 player.height = 810;
	 player.y = 107;
	 player.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO;
	 player.align = VideoAlign.LEFT;
	 player.pause();
	 this.addChild(player);
	}
		
	private function onVideoFunc(evt:CustomEvent) {
		onVideoFuncDo(evt.methode, evt.argument);
	}

	private function onVideoFuncDo(methode, argument) {
		if (methode == "VideoPlay") {
			player.addEventListener(Event.COMPLETE, onMovieEnd);
			player.addEventListener(VideoEvent.READY, onReady); 
			if ("./videos/" + argument + ".f4v" == player.source) {
				player.stop();
			} else {
				player.load("./videos/" + argument + ".f4v");
			}
		}
		
		if (methode == "VideoStop") {
			try { player.pause(); }
			catch (e:Error) { trace("Main:onVideoFunc:VideoStop:ERROR " + e); }	
		}
	}
		
	private function onReady() {
		player.play();
	}
		
	private function onMovieEnd() {
		arguments;
		trace("Movie End")
	}
     }
}
Der schöne "Complete-Event" funktioniert, nicht aber der VideoEvent -- der in meinem FlashDeveloper auch nicht als Schlüsselwort erkannt wird und demnach vom Syntaxhighlighting nicht hervorgehoben wird.

Hat jemand damit schon mal gearbeitet?
Seebold ist offline   Mit Zitat antworten
Alt 27-06-2011, 15:05   #2 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Diese Fehlermeldung und das Fehlen des Syntax-HighLightings in FD sind ein starkes Indiez dafür, dass es keine Konstante namens READY in der Klasse VideoEvent gibt. Ein Blick in die Referenz bestätigt das.

Wo hast Du denn dieses Event her?

P.S.: CustomEvent.CUSTOM dürfte übrigens etwas sein, was Du selbst nicht mehr verstehts, wenn Du in ein paar Monaten noch mal auf diesen Code schaust. Ich würde Dir deshalb empfehlen, Deinen Klassen, Funktionen und Eigenschaften verständliche Namen zu geben, die Inhalt oder Funktion des betreffenden Objekts beschreiben.
__________________
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 (27-06-2011 um 15:10 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Alt 27-06-2011, 15:51   #3 (permalink)
Padawan
 
Benutzerbild von Seebold
 
Registriert seit: Dec 2005
Ort: Hannover
Beiträge: 75
Hallo Martin, danke für deine Antwort.

Zitat:
P.S.: CustomEvent.CUSTOM dürfte übrigens etwas sein, was Du selbst nicht mehr verstehts, wenn Du in ein paar Monaten noch mal auf diesen Code schaust. Ich würde Dir deshalb empfehlen, Deinen Klassen, Funktionen und Eigenschaften verständliche Namen zu geben, die Inhalt oder Funktion des betreffenden Objekts beschreiben.
Ich befürchte das auch :-| Ich würde auch gerne soetwas wie unter AS2 _root.mc_videoplayer.play("filmchen.f4v") machen, aber das macht man in AS3 nicht mehr, oder? Und über generelle Events lassen sich keine Argumente übermitteln. Da es auch keine globalen Varianbeln mehr gibt, fühle ich mich manches Mal wie ein Jongleur. Übersichtlicher wäre vielleicht, würde man die CUSTOM-Events benennen ...

Zum Kernproblem: Vielleicht habe ich eine andere Referenz, aber unter ActionScript 3.0 Language and Components Reference -> VideoEvent gibt es als Public Constant "READY : String = "ready" [static] Defines the value of the type property of a ready event object." (Google videoevent.ready - Google-Suche)

Sollte also eigentlich gehen, oder?
Seebold ist offline   Mit Zitat antworten
Alt 27-06-2011, 16:34   #4 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Ah - daher weht der Wind (auch wenn heute leider gar keiner weht ):

Das von Dir zitierte Event gehört zur Klasse fl.video.VideoEvent. Im Paket flash.events gibt es aber auch eine Klasse namens VideoEvent. Und da Du dieses Paket als erstes und komplett (mit einer WildCard) importierst hat diese Klasse Vorrang:
Zitat:
Zitat von Seebold Beitrag anzeigen
PHP-Code:
import flash.events.*; 
Das ist übrigens einer der Gründe dafür, warum man (insbesondere bei Imports) nie die Wildcard (*) verwenden sollte, sondern immer expliziet nur die Klassen importiert, die man auch braucht:
PHP-Code:
import flash.events.Event;
import flash.events.MouseEvent
Wenn dann mal was schief läuft, sollte man eigentlich auch eine Fehlermeldung bekommen...
__________________
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 (27-06-2011 um 16:36 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Alt 27-06-2011, 16:53   #5 (permalink)
Padawan
 
Benutzerbild von Seebold
 
Registriert seit: Dec 2005
Ort: Hannover
Beiträge: 75
Thumbs up GELÖST VideoEvent

Hey ho! Das muss man wissen, oder? Ich muss keine Ressourcen sparen, darum habe ich glatt weg alles importiert ... Aber so klappts. Super Hinweis.
Seebold ist offline   Mit Zitat antworten
Alt 27-06-2011, 17:13   #6 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.162
Zitat:
Zitat von Seebold Beitrag anzeigen
Ich muss keine Ressourcen sparen, darum habe ich glatt weg alles importiert ...
Das hat weniger was mit »Ressourcen« als vielmehr mit »Überblick« zu tun!
__________________
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
Antwort

Lesezeichen

Stichworte
fl.video, flvplayback, ready, videoevent

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
verlinkung will nicht klappen zerobasic ActionScript 3 3 11-08-2009 15:17
onData scheint nicht zu klappen SirKennedy ActionScript 2 5 09-01-2008 09:54
UnloadMovie will nicht klappen ^^ loopmode ActionScript 1 4 05-12-2004 14:01
Button will nicht so klappen, wie er will... T.A. ActionScript 1 3 07-10-2003 14:55
Scrollbalken klappen nicht jose Flash MX 5 27-05-2002 12:16


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:42 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele