Ce qui est curieux, c'est qu'en surdimensionnant {$FRAME_WIDTH} 1600 pixels par exemple (dépasser la valeur de la définition horizontal) en supprimant :
et leCode:Stage.addListener(Self);
, ça marche...Code:Stage.scaleMode := 'noScale';
Version imprimable
Ce qui est curieux, c'est qu'en surdimensionnant {$FRAME_WIDTH} 1600 pixels par exemple (dépasser la valeur de la définition horizontal) en supprimant :
et leCode:Stage.addListener(Self);
, ça marche...Code:Stage.scaleMode := 'noScale';
tout dépend de ce que tu entends pas "ça marche" :)
sans le "noScale" le contenu de l'animation dont les dimensions sont définies par $FRAME_WIDTH et $FRAME_HEIGHT est zoomé selon certaines règles reprises ici.
Ce que je voulais dire est qu'il est dommage de ne pas garder la valeur de scalemode par défaut :showAll qui permet un redim sans faire écouter stage..
Il vaut mieux éviter le noscale.
stage.width prend la valeur FRAME_WIDTH que l'on définit supérieure à la plupart des résolutions écran si bien que le movieclip s'adaptera automatiquement à la largeur du navigateur qui est plus petite. Ainsi on aura un redimensionnement systématique qui se centre lui-même. Il suffit d'ajouter un align top. Le clip ne sera jamais plus petit que la largeur du navigateur avec cette astuce.
Code:
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 program fullpage; {$FRAME_WIDTH 1600} //grande valeur {$FRAME_HEIGHT 400} {$FRAME_RATE 12} {$BACKGROUND $FFFFFF} uses Flash8; type TFullPage = class(MovieClip) constructor Create; end; constructor TFullPage.Create; begin inherited Create(_root, 'FullPage', 1); beginFill($ff0000); linestyle(1,0); lineto(Stage.Width,0); lineto(Stage.Width,100); lineto(0,100); endFill(); beginFill($ffff00); moveto(Stage.Width-100,0); lineto(Stage.Width,0); lineto(Stage.Width,100); lineto(Stage.Width-100,100); lineto(Stage.Width-100,0); endFill(); end; begin TFullPage.Create(); stage.align:='T'; end.
oui d'accord, mais dans ce cas tu as une zone blanche en bas de page (je ne savais pas que "align" fonctionnait sans le noScale). et si tu réduis la hauteur de la page la barre rouge se met soudain à rétrécir :)
Je n'ai pas été vérifier :D. De toute façon, ta méthode est celle préconisée par adobe et même dans l'excellent bouquin de Thibault Imbert en as3 où l'on a un véritable événement Event.Resize qui gére le redimensionnement en StageScalemode.No_Scale...
C'est parce que je n'aime pas utiliser noscale que je cherchais à tout prix une parade...:D