2009-06-12 9 views
0
<?xml version="1.0" encoding="utf-8"?> 
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init1()" width="100%"> 
<mx:Script> 
     <![CDATA[ 
      import mx.controls.Alert; 
      public function init1():void 
      { 
       Alert.show(this.width.toString()); 
      } 
     ]]> 
    </mx:Script> 
</mx:WindowedApplication> 

Je cours le code ci-dessus sur un moniteur avec la résolution 800x600. Donc, je m'attends à que l'alerte qui sortira montrera la largeur à 800. Mais il montre la largeur pour être 500. Pourquoi?Flex: Dimensions d'une application

+0

Peut-être trop évident, mais juste pour être sûr: votre fenêtre d'application est-elle agrandie? Occupe-t-il l'intégralité de l'écran 800x600? – Stiggler

+0

bien qu'il occupe presque tout l'écran, il n'est pas maximisé. Après avoir appelé maximiser, il renvoie 800 cependant. Mais c'était certainement pas 500 plus tôt, si je pouvais faire confiance à mes yeux. Peut être qu'il prend un certain nombre de paramètres par défaut et n'est pas défini correctement jusqu'à l'événement applicationcomplete. – dharm0us

Répondre

0

La propriété width = "100%" ne fera rien car c'est une application AIR et son état par défaut n'est pas toujours maximisé (au moins sur mon Mac OS). L'extrait ci-dessous maximise automatiquement l'application et trace ses limites et son état actuel chaque fois que vous réduisez, agrandissez ou restaurez la fenêtre.

<?xml version="1.0" encoding="utf-8"?> 
<mx:WindowedApplication 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    layout="absolute" 
    creationComplete="maximize()" 
    displayStateChange="onDisplayStateChange(event)"> 

    <mx:Script> 
     <![CDATA[ 
      import mx.controls.Alert; 

      public function onDisplayStateChange(event:NativeWindowDisplayStateEvent):void { 
      Alert.show(event.afterDisplayState + ' ' + bounds.toString()); 
      } 
     ]]> 
    </mx:Script> 
</mx:WindowedApplication> 
0

Vous pouvez également utiliser Capabilities.screenResolutionX et capabilities.screenResolutionY pour connaître la taille de l'écran.

Questions connexes