Stage.scale, oui mais pas trop !

Stage.scale, oui mais pas trop ! - Flash/ActionScript - Programmation

Marsh Posté le 24-04-2006 à 22:56:40    

bonsoir, :hello:  
j'aimerai que mon swf se resize en fonction de la taille de la fenetre -> ça ok
j'aimerai que mon swf fasse une taille fixe -> ça ok
j'aimerai que mon swf se resize en fonction de la taille de la fenetre mais avec une taille maxi -> j'ai pas d'idée  :??:  
 
alors comment faire. j'appelle mon swf dans une page php, alors je pense qu'avec un if et tout le toutim, ça devrait le faire, mais j'imagine mal la structure du truc... auriez vous un debut d'idée...
merci :jap:


---------------
c'est au pied du mur que l'on voit le mieux le mur !
Reply

Marsh Posté le 24-04-2006 à 22:56:40   

Reply

Marsh Posté le 25-04-2006 à 07:49:52    

en utilisant Stage.onResize (dans un listener) par contre comme Stage.width et Stage.height ne sont dispo qu'en lecture seul, il faut que tu mette toute ton anim dans un clip que tu redimensionne...


---------------
D3
Reply

Marsh Posté le 28-04-2006 à 16:20:25    

merci mechkurt
je viens d'essayer mais ça ne fonctionne pas. il faudrait ouvrir le swf dans la fenetre IE directement, sans passer par un fichier html pour que ça fonctionne... encore que c'est pas très efficace
 
j'en suis là :  

Code :
  1. var myListener:Object = new Object();
  2. myListener.onResize = function() {
  3. if ((Stage.width<850) or (Stage.height<850)) {
  4.  if (rapport<=1) {
  5.   _root.container._height = 750/850*Stage.height;
  6.   _root.container._width = _root.container._height*rapport;
  7.  } else {
  8.   _root.container._width = 750/850*Stage.width;
  9.   _root.container._height = _root.container._width/rapport;
  10.  }
  11.  _root.container._x = (Stage.width/2)-(_root.container._width/2);
  12.  _root.container._y = (Stage.height/2)-(_root.container._height/2);
  13. }
  14. };
  15. Stage.addListener(myListener);


 
_root.container est le clip que je veux redimensionner. en fait je lui donne un pourcentage de la dimension de la scene si celle ci depasse la taille maxi.
 
je crois que je vais etre obligé de feinter severement !  
à moins que t'ai une lumière à m'apporter parce que là, je vois pas...
 
d'avance merci


---------------
c'est au pied du mur que l'on voit le mieux le mur !
Reply

Marsh Posté le 28-04-2006 à 16:29:36    

pour la  premiere partie (se passer de html) pas necessairement rien ne t'empeche d'avoir ca dans ta css:

Code :
  1. html, body, object {
  2. padding:0;
  3. margin:0;
  4. width:100%;
  5. height:100%;
  6. }


apres c'est sur que si tu as une balise object avec des width et height defini en dur et en pixel, ca risque pas d'invoquer stage.onresize...
 
pour le reste en faisant une regle de trois et en jouant sur _root.container._xscale et _root.container_yscale ca doit rouler...


---------------
D3
Reply

Marsh Posté le 28-04-2006 à 16:58:56    

je vais tester ça merci


---------------
c'est au pied du mur que l'on voit le mieux le mur !
Reply

Marsh Posté le 09-05-2006 à 00:12:29    

finalement j'ai renoncé et j'ai contourné l'obstacle en php. en fonction de la résolution ça change la variable de taille de la balise object ...


---------------
c'est au pied du mur que l'on voit le mieux le mur !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed