2012-11-08 25 views
5

मेरे पास दो क्षेत्रों के साथ एक सीमा लेआउट है; केंद्र और पश्चिम। वेस्टरेगियन स्प्लिटर परम के साथ जोड़ा जाता है और ढह गया है। अब मेरे पास एक टूलबार है जिसमें से मैं पश्चिम क्षेत्र को छिपाना/दिखाना चाहता हूं। मैंने स्प्लिटर की toggleTargetCmp() विधि को कॉल करके इसे हल किया है। खैर मुझे पता है, यह एक निजी विधि है और इसका उपयोग नहीं किया जाना चाहिए, लेकिन मुझे इसे संग्रहीत करने का कोई और तरीका नहीं मिला। अब तक सब ठीक है। यह सब काम करता है।एक सीमा-लेआउट क्षेत्र के भीतर एक घटक को छिपाने के लिए प्रोग्रामिक रूप से

लेकिन अब मैं स्प्लिटर & प्लेसहोल्डर अगर टूलबार में बटन क्लिक किया जाता है (मैं प्लेसहोल्डर विभाजक की getCollapseTarget() विधि का उपयोग कर ownet लाने) छुपाना चाहते हैं। मैं setVisible(false) जो विभाजक के लिए काम करता है के साथ यह कोशिश की, लेकिन यह अच्छी तरह से प्लेसहोल्डर के लिए काम नहीं किया ... प्लेसहोल्डर उदाहरण पर एक गहरी नज़र के बाद मैं बता सकते हैं यह hidden: true पर सेट किया जाता है कि लेकिन यह डिफ़ॉल्ट प्लस hiddenAnchestor: false द्वारा hideMode: 'offsets' का उपयोग करता है जो एपीआई में दस्तावेज नहीं है।

के लिए hideMode एपीआई दस्तावेज के आधार पर मैं 'display' करने के लिए इसे किसी भी भाग्य के बिना setVisible(false) कॉल करने से पहले स्थापित करने के लिए करने की कोशिश की, प्लेसहोल्डर अभी भी दिखाई दे रहता है।

तो मैं कैसे placholder भी छुपा सकते हैं। या क्या इसे संग्रहीत करने का एक बेहतर तरीका भी है?

उत्तर

1

क्या आपने छिपाने की विधि की कोशिश की है? जैसा कि आप वर्णन करते हैं - यह क्षेत्र और स्प्लिटर छुपाता है। अपने प्रोजेक्ट में मैं इस तरह यह कार्य करें:

panel.hide(); 

जहां पैनल borderPanel वस्तुओं में से एक है।

+0

[एपीआई छिपाने()] (http://docs.sencha.com/ext-js/4-1/#!/api/Ext.Component-method-hide) के आधार पर चल तत्वों के लिए ही मान्य है । लेकिन मैं इसे आज़मा दूंगा। – sra

+0

अच्छा, कभी-कभी लाइनों को फिर से पढ़ना अच्छा होता है :) बस एनीमेशन लक्ष्य प्रतिबंधित है। उस पर मुझे इंगित करने के लिए धन्यवाद! +1 – sra

+0

आपका स्वागत है – mik