Im bon à AS2, mais je voulais faire mon propre AS3 lecteur vidéo faisant me donnerait une OK compréhension du code. C'est probablement la plus simple question Ive postée ici principalement depuis Im nouveau à AS3 et joue seulement avec quelques tid bits du code.
Donc je sais pas comment le faire en AS3, AS2 mais me donne les questions. J'ai un lecteur vidéo qui charge un fichier swf externe qui contient les boutons et contrôles des animations qu'ils font. Cependant, toutes les fonctionnalités sera assurée par le film de racine ou pare pas selon comment vous souhaitez appeler.
// Make a url Loader object
var player_loader:URLLoader = new URLLoader();
// Setup and event listener
player_loader.addEventListener(Event.COMPLETE, setup_player);
// Load the XML file
player_loader.load(new URLRequest('config.xml'));
// Setup the player
function setup_player(e:Event):void {
var xml_config:XML = new XML(e.target.data);
var skin_loader:Loader = new Loader();
// var skin_url:URLRequest = new URLRequest(xml_config.skin.text()); // This is how the skin will be loaded however for the sake test testing use the line below
var skin_url:URLRequest = new URLRequest('skin.swf');
skin_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, set_buttons);
skin_loader.load(skin_url);
player_controls.addChild(skin_loader);
}
function set_buttons(e:Event):void {
trace('In Set Buttons');
player_controls.play_button.addEventListener(MouseEvent.CLICK, play_video);
}
function play_video(e:MouseEvent):void {
trace('clicked')
}
-
- // Make a url Loader object
- var player_loader:URLLoader = new URLLoader();
-
- // Setup and event listener
- player_loader.addEventListener(Event.COMPLETE, setup_player);
-
- // Load the XML file
- player_loader.load(new URLRequest('config.xml'));
-
- // Setup the player
- function setup_player(e:Event):void {
-
- var xml_config:XML = new XML(e.target.data);
-
- var skin_loader:Loader = new Loader();
- // var skin_url:URLRequest = new URLRequest(xml_config.skin.text()); // This is how the skin will be loaded however for the sake test testing use the line below
- var skin_url:URLRequest = new URLRequest('skin.swf');
-
- skin_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, set_buttons);
- skin_loader.load(skin_url);
- player_controls.addChild(skin_loader);
-
- }
-
- function set_buttons(e:Event):void {
- trace('In Set Buttons');
- player_controls.play_button.addEventListener(MouseEvent.CLICK, play_video);
-
- }
-
- function play_video(e:MouseEvent):void {
- trace('clicked')
- }
-
-
Donc ce code serait charger un XML lorsqu'il termine il chargera la peau une fois qu'il charge aurait configurer les fonctions de clic. tout cela fonctionne jusqu'à la mise en place de la fonction du clic
player_controls.play_button.addEventListener(MouseEvent.CLICK, play_video);
Maintenant je sais quand je l'ai fait avec AS2, j'ai dû utiliser onLoadInit comme ceci
// Get the skin and make sure something is in it
var skin_swf = 'skin2.swf';
// Make a new movie clip loader for the skin
var SkinLoader:MovieClipLoader = new MovieClipLoader();
// Add a listener so we know when something has happened
SkinLoader.addListener(this);
// Load the skin into the empty movie clip
SkinLoader.loadClip(skin_swf, empty);
// This function is the onload listener for the skin loader. this is a must to have other wise there would be no way to communicate
// from the actions here to the buttons in the skin
function onLoadInit(mc:MovieClip) {
control_bar.play_pause_button.onPress = function () {
// Play the animation
this.animation.gotoAndPlay('press');
}
}
- // Get the skin and make sure something is in it
- var skin_swf = 'skin2.swf';
-
- // Make a new movie clip loader for the skin
- var SkinLoader:MovieClipLoader = new MovieClipLoader();
-
- // Add a listener so we know when something has happened
- SkinLoader.addListener(this);
-
- // Load the skin into the empty movie clip
- SkinLoader.loadClip(skin_swf, empty);
-
- // This function is the onload listener for the skin loader. this is a must to have other wise there would be no way to communicate
- // from the actions here to the buttons in the skin
- function onLoadInit(mc:MovieClip) {
- control_bar.play_pause_button.onPress = function () {
-
- // Play the animation
- this.animation.gotoAndPlay('press');
-
- }
- }
-
IVe a recherché l'onLoadInit AS3 ou quelque chose comme elle et ne semble pas prête de trouver quoi que ce soit.
Donc pour récapituler, j'ai une swf(swf1) qui charge un swf2 swf(swf2) a les boutons et swf1 contient l'actionscipt pour les boutons dans le swf2. Si quelqu'un sait comment le faire ou peut me diriger pour certains documents qui peuvent aider. Votre aide serait appréciée.
Si je découvre une solution je l'affichera.