2011-07-12 16 views
11

एक तरीका है जो कणों के घटकों के लिए लेआउट जानकारी प्रिंट करता है। मुझे पता था कि एक विधि है लेकिन मैं नाम भूल गया।जावा स्विंग लेआउट को कैसे डिबग करें

जब आप स्विंग घटक के लिए उस विधि को कॉल करते हैं तो यह डंपस्टैकट्रैक कॉल की तरह उस घटक के लिए लेआउट जानकारी को विस्तार से प्रदर्शित करता है।

कोई विचार? उस विधि का नाम क्या है? मैंने इसे एक पुस्तक में पढ़ा लेकिन भूल गया। या मुझे जावा स्विंग लेआउट डीबग करने के कुछ अच्छे तरीके बताएं।

+0

क्या आपका मतलब getLayout() है? –

उत्तर

15

स्विंग डीबग करने के लिए एक दृश्य उपकरण Swing Explorer है जिसमें नेटबीन्स और ग्रहण के लिए प्लगइन भी हैं। यह आपको स्विंग घटकों के पेड़ के माध्यम से नेविगेट करने देता है और काफी उपयोगी हो सकता है।

+3

यह आईडीईए 13 –

+4

में मेरे लिए काम नहीं किया है लिंक टूट गया है। और मुझे marketplace.eclipse.org पर प्रोजेक्ट नहीं मिल रहा है। – Nateowami

+0

स्विंग एक्सप्लोरर बहुत पुराना है और परियोजना समाप्त हो गई है। –

2

प्रत्येक कंटेनर (और इसमें सभी जेकंपोनेंट्स शामिल हैं) में getLayout() विधि है जो लेआउट मैनेजर को वापस लौटाएगी जो इस घटक या शून्य के लिए सेट की गई है अगर कोई सेट नहीं है (लेकिन याद रखें कि कई को डिफ़ॉल्ट प्रबंधक दिए जाते हैं)। आप आयोजित घटकों की एक सरणी वापस करने के लिए कॉम्पोनेंट्स() भी प्राप्त कर सकते हैं। यदि आप सभी लेआउट प्रबंधकों को देखना चाहते हैं, तो आपको सभी घटकों के माध्यम से जाने के लिए एक पुनरावर्ती विधि लिखनी होगी, जांचें कि वे कंटेनर से प्राप्त होते हैं और फिर उपरोक्त विधियों को कॉल करते हैं।

5

मुझे इसके लिए एक विशिष्ट विधि के बारे में पता नहीं है, आप इसे रनटाइम पर एक कुंजी प्रेस के साथ कर सकते हैं।

पेज पर एक नज़र डालें: Troubleshooting AWT

यह निम्न डिबगिंग टिप प्रदान करता है:

AWT घटक पदानुक्रम, प्रेस Ctrl + Shift + F1 डंप करने के लिए।

यह भी खंड "लेआउट के साथ कोई समस्या" के अंतर्गत लेआउट डिबगिंग के लिए अन्य सुझाव प्रदान करता है और वहाँ स्विंग "समस्या निवारण स्विंग"

29

जब आपके JFrame Ctrl + SHIFT + F1 और दिखाई प्रेस है समर्पित एक और अनुभाग है घटकों और लेआउट के पेड़ पदानुक्रम के लिए कंसोल आउटपुट देखें।

+0

मैं इसे ग्रहण या स्विंग विंडो पर प्राप्त नहीं कर सकता (जब डीबगिंग ..etc – shareef

+0

@shareef विंडो पर। और यह कंसोल पर डंप होगा। – Nateowami

संबंधित मुद्दे