बॉर्डर फैक्ट्री एक कारखाना . है वर्ग जो जावा में विभिन्न प्रकार की सीमाएँ प्रदान करता है।
सीमाओं के प्रकार
- बेवेलबॉर्डर :यह बॉर्डर उठाया . खींचता है या निचला उभरे हुए किनारे।
- खाली सीमा :यह कोई ड्राइंग नहीं करता, लेकिन जगह लेता है।
- EtchedBorder :एक निचली नक़्क़ाशीदार सीमा एक आयत और एक उभरी हुई नक़्क़ाशीदार सीमा का आभास देता है स्क्रीन की सतह जैसा दिखता है।
- लाइनबॉर्डर :एक घटक के चारों ओर एक साधारण आयत बनाता है। हम लाइनबॉर्डर . में लाइन का रंग और चौड़ाई निर्दिष्ट कर सकते हैं कंस्ट्रक्टर।
- MatteBorder :हम एक MatteBorder . बना सकते हैं एक निश्चित रंग के साथ और बाएं . पर सीमा का आकार निर्दिष्ट करें , ऊपर, दाएं, और नीचे घटक का। एक MatteBorder हमें एक आइकन पास करने की भी अनुमति देता है जिसका उपयोग सीमा खींचने के लिए किया जाएगा। यह एक छवि (ImageIcon) या आइकन . का कोई अन्य कार्यान्वयन हो सकता है इंटरफ़ेस।
- शीर्षकबॉर्डर :एक शीर्षक के साथ एक नियमित सीमा। एक शीर्षक सीमा वास्तव में एक सीमा नहीं खींचता है; यह सिर्फ किसी अन्य सीमा वस्तु के संयोजन के साथ एक शीर्षक खींचता है। यह सीमा प्रकार विशेष रूप से एक जटिल इंटरफ़ेस में नियंत्रण के विभिन्न सेटों को समूहीकृत करने के लिए उपयोगी है।
- घटक सीमा: एक सीमा जिसमें दो अन्य सीमाएँ होती हैं। यह विशेष रूप से आसान है अगर हम एक घटक को खाली सीमा . में संलग्न करना चाहते हैं और फिर उसके चारों ओर कोई सजावटी वस्तु रखें, जैसे EtchedBorder या एक MatteBorder ।
उदाहरण
आयात करें SwingUtilities.invokeLater(run); } स्टैटिक रननेबल रन =नया रननेबल () {@ ओवरराइड पब्लिक वॉयड रन () {बॉर्डरफैक्टरी टेस्ट; टेस्ट =नया बॉर्डरफैक्टरीटेस्ट (); test.setVisible (सच); } }; पब्लिक स्टैटिक क्लास BorderFactoryTest JFrame {public BorderFactoryTest() {setTitle ("BorderFactory Test") का विस्तार करती है; सेटसाइज (350, 400); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); सेटलेआउट (नया फ्लोलेआउट ()); जोड़ें (createBorderedPanel (BorderFactory.createRaisedBevelBorder (), "createRaisedBevelBorder ()")); जोड़ें (बॉर्डर्ड पैनेल बनाएं (बॉर्डर फैक्ट्री। क्रिएट बेवेलबॉर्डर (बेवेलबॉर्डर। कम), "क्रिएट बेवेलबॉर्डर (बेवेलबॉर्डर। लोवरेड)")); जोड़ें (बॉर्डर्ड पैनेल बनाएं (बॉर्डर फैक्ट्री। क्रिएट बेवेलबॉर्डर (बेवेलबॉर्डर। आरएआईएसईडी), "बेवेलबॉर्डर बनाएं (बेवेलबॉर्डर। आरएआईएसईडी)")); जोड़ें (क्रिएटबॉर्डर्डपैनल (बॉर्डर फैक्ट्री। क्रिएटकंपाउंडबॉर्डर (बॉर्डर फैक्ट्री। क्रिएट बेवेलबॉर्डर (बेवेलबॉर्डर। आरएआईएसईडी), बॉर्डर फैक्ट्री। जोड़ें (createBorderedPanel (BorderFactory.createEtchedBorder (), "createEtchedBorder ()")); जोड़ें (createBorderedPanel (BorderFactory.createEtchedBorder (EtchedBorder.LOWERED), "createEtchedBorder (EtchedBorder.LOWERED)")); जोड़ें (बॉर्डर्ड पैनेल बनाएं (बॉर्डर फैक्ट्री। क्रिएटएच्डबॉर्डर (एच्च्डबॉर्डर। आरएआईएसईडी), "क्रिएटइच्डबॉर्डर (एच्च्डबॉर्डर। आरएआईएसईडी)")); जोड़ें (बॉर्डरडपैनल बनाएं (बॉर्डर फैक्ट्री। क्रिएटएच्डबॉर्डर (रंग। लाइटग्रे, रंग। पीला), "क्रिएटइच्डबॉर्डर (रंग। लाइटग्रे, रंग। पीला)")); जोड़ें (createBorderedPanel (BorderFactory.createLineBorder (Color.red), "createLineBorder (Color.red)")); add(createBorderedPanel(BorderFactory.createLineBorder(Color.blue, 5), "createLineBorder(Color.blue, 5)")); जोड़ें (createBorderedPanel (BorderFactory.createDashedBorder (null), "createDashedBorder (null)")); सेटलोकेशन रिलेटिव टू (अशक्त); } } निजी स्थिर JPanel createBorderedPanel (बॉर्डर b, स्ट्रिंग नाम) {JLabel लेबल =नया JLabel (नाम); जेपीनल पैनल =नया जेपीनल (); पैनल.सेटबॉर्डर (बी); पैनल। जोड़ें (लेबल); रिटर्न पैनल; }}आउटपुट