2008-12-17 30 views
14

में घटकों छुपा जब मैं दिखाई = false घटक खाल के एक घटक निर्धारित करते हैं, लेकिन मैं इसे कोई जगह लेने के लिए कैसे मिलता है (कंटेनर आकार बदलने के लिए के अंतर्गत आता है मिलता है ??)फ्लेक्स: जब फ्लेक्स

<mx:HBox width="100%" height="100%"> 
... 
</mx:HBox> 

<mx:HBox width="100%" id="boxAddComment" visible="false" > 
    <mx:TextArea id="txtComment"/> 
    <mx:Button label="Spara" click="addComment();"/> 
</mx:HBox> 

जब boxAddComment दिख रहा है = false मैं पहली बार HBox 100% ऊंचाई लेना चाहते हैं।

उत्तर

32

का उपयोग करें InLayout संपत्ति का उपयोग करें। जैसे

 

<mx:HBox width="100%" height="100%"> 
... 
</mx:HBox> 

<mx:HBox width="100%" id="boxAddComment" visible="false" includeInLayout="false" > 
    <mx:TextArea id="txtComment"/> 
    <mx:Button label="Spara" click="addComment();"/> 
</mx:HBox> 

 
14

includeInLayout ="true" या "false" का उपयोग करते हुए अंतरिक्ष कि यह आइटम है कि खंड में प्रदान की गई किया जा रहा के प्रवाह में ले जाता है टॉगल करेगा।

महत्वपूर्ण नोट: जब includeInLayout = "false" का उपयोग कर तो आप आमतौर पर कुछ है जो अवांछित है जो कि अपने मद (boxAddComment) अभी भी id="boxAddComment" नीचे पेज लेकिन सामान पर दिखाई दे रहा है यह नेत्रहीन ओवरलैप जाएगा मिल जाएगा आप visible="false" निर्दिष्ट नहीं करते हैं । तो, सामान्य रूप से, आप शायद "includeInLayout" और "visible" सिंक में होना चाहते हैं।

+14

यह दो मानों को सिंक में रखने का एक अच्छा तरीका हो सकता है: '' –

1

बासिंग में रॉस हैंडर्सन के सुझाव में बॉक्स के साथ शामिल है AddComment.visible फ्लेक्स 3.0 के साथ बहुत अच्छा काम करता है लेकिन मुझे लगता है कि यह फ्लेक्स 3.6 में काम नहीं कर रहा है (मैंने एक पोस्टिंग देखी है जो वास्तव में फ्लेक्स 3.3 के बाद से काम करना बंद कर देती है)।

बस fyi।

+0

4.1 में ठीक काम करता है – iskuhar