सभी JTextfField s को एक JPanel पर प्रारंभ करने के लिए जब उपयोगकर्ता "स्पष्ट बटन" पर क्लिक करें, मुझे JPanel (सभी व्यक्तिगत फ़ील्ड को "" पर सेट करने के बजाय) के माध्यम से पाश की आवश्यकता है।
मैं प्रत्येक लूप में कैसे उपयोग कर सकता / सकती हूं? JTextField s
के लिए (घटक c: pane.getComponents ()) {यदि (सी instisionof JTextField) {((JTextField) c) .setText (" "); }} लेकिन अगर आपके पास JTextFields अधिक गहराई से नेस्टेड है, तो आप निम्न रिकर्सिव फॉर्म का उपयोग कर सकते हैं:
शून्य स्पष्ट टेक्स्टफ़ाइल (कंटेनर कंटेनर) {के लिए (घटक C: कंटेनर.गेट कॉम्पोनेंट्स ()) {यदि (सी इंस्टॉलेशनफ जेटेक्स्टफिल्ड) {((जेटीप्टेफिल्ड) सी) .सेट टेक्स्ट (""); } और अगर (सी उदाहरण कंटेनर के लिए) {clearTextFields (कंटेनर) सी); }}} संपादित करें: टॉम होटिन - निरोधक सुझाव के लिए एक नमूना आपके फ्रेम वर्ग में सूची होगी:
<पूर्व> सूची & lt; JTextField & gt; FieldsToClear = नई लिंक्डलिस्ट & lt; JTextField & gt; (); और जब आप व्यक्तिगत टेक्स्ट फ़ील्ड को इनिशियलाइज़ करते हैं, तो उन्हें इस सूची में जोड़ें:
someField = नया JTextField ("मुझे संपादित करें"); {FieldsToClear.add (someField); } और जब उपयोगकर्ता साफ़ बटन पर क्लिक करता है, तो बस:
के लिए (JTextField tf: fieldsToClear) {tf.setText (""); }
Comments
Post a Comment