bonjour,
dans ce site :
http://www.actilife.ch/Documents/index.html#/fr/home/
on remarque que la hauteur de l'animation est proportionnelle selon le contenu,
comment on peut faire la hauteur dynamique selon le contenu ?
merci
bonjour,
dans ce site :
http://www.actilife.ch/Documents/index.html#/fr/home/
on remarque que la hauteur de l'animation est proportionnelle selon le contenu,
comment on peut faire la hauteur dynamique selon le contenu ?
merci
utilisation de la property scaleMode avec l'event onResize
http://livedocs.adobe.com/flash/9.0/...html#scaleMode
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 stage.scaleMode= "noScale"; stage.align = "TL"; stage.addEventListener(Event.RESIZE, onResize); public function onResize(ev:Event):void { var stageWidth:Number=stage.stageWidth; var stageHeight:Number= stage.stageHeight; //repositionnez vos éléments en fonction de la nouvelle taille };
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
vous pouvez mettre [résolu] dans le sujet?
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
désolé pas encore résolu,
je vais inserer ou ce code ?
dans l'HTML ou actionscript de l'animation ?
il me signal une erreur quand je l'insere dans l'actionscript,
The public attribute can only be used inside a package
Donc il faut insérer ce code dans votre animation swf
exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 //la première partis dans une méthode que vous exécutez au lancement de votre animation stage.scaleMode= "noScale"; stage.align = "TL"; stage.addEventListener(Event.RESIZE, onResize); //et cette méthode dans la classe appelant le code ci dessus public function onResize(ev:Event):void { var stageWidth:Number=stage.stageWidth; var stageHeight:Number= stage.stageHeight; //repositionnez vos éléments en fonction de la nouvelle taille };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 package { import flash.display.Stage; import flash.display.Sprite; import flash.events.Event; public class Main extends Sprite { public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); stage.scaleMode= "noScale"; stage.align = "TL"; stage.addEventListener(Event.RESIZE, onResize); } public function onResize(ev:Event):void { var stageWidth:Number=stage.stageWidth; var stageHeight:Number= stage.stageHeight; //repositionnez vos éléments en fonction de la nouvelle taille } } }
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
En as3 ce code doit être présent dans une classe unique, donc dans un seul fichiers.as.
Dans l'exemple la classe est nommée Main.
Donc il faut rajouter un classe Main a votre projet.
Cette ci devant être enregistrée dans un fichier appelé Main.as.
Cependant l'exemple été la pour vous expliquer le mode fonctionnement.
Vous développez bien en As3 et pas en as2 ?
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
Sinon testez le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 stage.scaleMode= "noScale"; stage.align = "TL"; stage.addEventListener(Event.RESIZE, function(ev:Event):void { var stageWidth:Number=stage.stageWidth; var stageHeight:Number= stage.stageHeight; //repositionnez vos éléments en fonction de la nouvelle taille } );
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
oui je développe en AS3 avec Flash CS4,
voici mon code :
mon but est de redimentionner le premier swf selon le deuxieme swf.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 import flash.display.Loader; var chargeur:Loader = new Loader(); var adresseSWF:URLRequest = new URLRequest("a.swf"); chargeur.load(adresseSWF); addChild(chargeur); chargeur.x = 100; chargeur.y = 300; stage.scaleMode= "noScale"; stage.align = "TL"; stage.addEventListener(Event.RESIZE, onResize); function onResize(ev:Event):void { var stageWidth:Number=stage.stageWidth; var stageHeight:Number= stage.stageHeight; //repositionnez vos éléments en fonction de la nouvelle taille };
car le deuxieme est plus grand en hauteur.
avec ce code j'ai aucune erreur mais rien ne se passe
Vous voulez redimensionner la hauteur du swf dans la page html ?
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
testez avec ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 var chargeur:Loader = new Loader(); var adresseSWF:URLRequest = new URLRequest("a.swf"); chargeur.contentLoaderInfo.addEventListener(Event.COMPLETE, function(event:Event):void { var _loader:Loader = Loader(event.target.loader); var sp:Sprite = Sprite(_loader.content); var MaxWidth:Number = sp.stage.stageWidth; var MaxHeight:Number = sp.stage.stageHeight; var ratio:Number=0; if (sp.width>MaxWidth) { var ww:Number = sp.width; sp.width = MaxWidth; ratio = sp.width/ww; sp.height = sp.height*ratio; } if (sp.height>MaxHeight) { var hh:Number =sp.height; sp.height = MaxHeight; ratio = sp.height/hh; sp.width = sp.width*ratio; } } ); chargeur.load(adresseSWF); addChild(chargeur); chargeur.x = 0; chargeur.y = 0;
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
Non sa fonctionne pas,
http://www.actilife.ch/Documents/ind...tente/dossier/
je voulais faire comme ce site ci-dessus
j'ai swf pricipal et je charge des swfs de different hauteurs
Le swf secondaire n'est pas redimensionné ou il n'est pas affiché ?
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
donc pouvez vous tester le code suivant et me dire ce qui apparait dans la fenêtre de sorti
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 chargeur.contentLoaderInfo.addEventListener(Event.COMPLETE, function(event:Event):void { var _loader:Loader = Loader(event.target.loader); trace("_loader"+_loader); var sp:Sprite = Sprite(_loader.content); trace("sp"+sp); var MaxWidth:Number = sp.stage.stageWidth; trace("MaxWidth"+MaxWidth); var MaxHeight:Number = sp.stage.stageHeight; trace("MaxHeight"+MaxHeight); trace("sp p x"+sp.parent.x); trace("sp p y"+sp.parent.y); trace("sp p w"+sp.parent.width); trace("sp p h"+sp.parent.height); trace("sp x"+sp.x); trace("sp y"+sp.y); trace("sp w"+sp.width); trace("sp h"+sp.height); var ratio:Number=0; if (sp.width>MaxWidth) { var ww:Number = sp.width; sp.width = MaxWidth; ratio = sp.width/ww; sp.height = sp.height*ratio; } if (sp.height>MaxHeight) { var hh:Number =sp.height; sp.height = MaxHeight; ratio = sp.height/hh; sp.width = sp.width*ratio; } } );
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
voici ce reçois
au fait, j'ai trouvé ce lien :_loader[object Loader]
sp[object MovieClip]
MaxWidth950
MaxHeight500
sp p x100
sp p y300
sp p w302
sp p h757.85
sp x0
sp y0
sp w302
sp h757.85
http://blog.deconcept.com/swfobject/
testez comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 chargeur.contentLoaderInfo.addEventListener(Event.COMPLETE, function(event:Event):void { var _loader:Loader = Loader(event.target.loader); trace("_loader"+_loader); var sp:Sprite = Sprite(_loader.content); trace("sp"+sp); var MaxWidth:Number = sp.stage.stageWidth-sp.parent.x; trace("MaxWidth"+MaxWidth); var MaxHeight:Number = sp.stage.stageHeight-sp.parent.y; trace("MaxHeight"+MaxHeight); trace("sp p x"+sp.parent.x); trace("sp p y"+sp.parent.y); trace("sp p w"+sp.parent.width); trace("sp p h"+sp.parent.height); trace("sp x"+sp.x); trace("sp y"+sp.y); trace("sp w"+sp.width); trace("sp h"+sp.height); var ratio:Number=0; if (sp.width>MaxWidth) { var ww:Number = sp.width; sp.width = MaxWidth; ratio = sp.width/ww; sp.height = sp.height*ratio; } if (sp.height>MaxHeight) { var hh:Number =sp.height; sp.height = MaxHeight; ratio = sp.height/hh; sp.width = sp.width*ratio; } trace("sp after x"+sp.x); trace("sp after y"+sp.y); trace("sp after w"+sp.width); trace("sp after h"+sp.height); } );
Flash player ActionScript Virtual Machine 2 http://www.mozilla.org/projects/tamarin/
fonctionnement de la machine virtuel : (ActionScript Virtual Machine 2 (AVM2)) :
http://www.adobe.com/content/dam/Ado...m2overview.pdf
la deuxieme swf apparait completement mnt, mais il a changé de dimension, il est réduit pour qu'il apparaisse
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager