Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

Java में LayoutManager और LayoutManager के प्रकार क्या हैं?

लेआउट प्रबंधक हमें कंटेनर के भीतर घटकों के आकार और स्थिति का निर्धारण करके GUI रूपों में दृश्य घटकों को व्यवस्थित करने के तरीके को नियंत्रित करने में सक्षम बनाते हैं।

लेआउट मैनेजर के प्रकार

जावा में 6 लेआउट मैनेजर हैं

  • फ्लोलेआउट :यह एक पृष्ठ पर शब्दों की तरह एक कंटेनर में घटकों को व्यवस्थित करता है। यह शीर्ष पंक्ति को बाएं से दाएं और ऊपर से नीचे . भरता है . घटकों को क्रम में व्यवस्थित किया जाता है क्योंकि उन्हें जोड़ा जाता है यानी पहला घटक ऊपर बाईं ओर दिखाई देता है, यदि कंटेनर सभी घटकों को प्रदर्शित करने के लिए पर्याप्त चौड़ा नहीं है, तो इसे लाइन के चारों ओर लपेटा जाता है। घटकों के बीच लंबवत और क्षैतिज अंतर को नियंत्रित किया जा सकता है। घटक बाएं, मध्य या दाएं संरेखित हो सकते हैं।
  • बॉर्डरलेआउट :यह सभी घटकों को किनारों के साथ या कंटेनर के बीच में व्यवस्थित करता है यानी ऊपर, नीचे, दाएं और बाएं क्षेत्र के किनारों। ऊपर या नीचे जोड़े गए घटकों को इसकी पसंदीदा ऊंचाई मिलती है, लेकिन इसकी चौड़ाई कंटेनर की चौड़ाई होगी और बाएं या दाएं जोड़े गए घटकों को भी इसकी पसंदीदा चौड़ाई मिलती है, लेकिन इसकी ऊंचाई कंटेनर की शेष ऊंचाई होगी। केंद्र में जोड़े गए घटकों को न तो इसकी पसंदीदा ऊंचाई और न ही चौड़ाई मिलती है। यह कंटेनर के शेष क्षेत्र को कवर करता है।
  • ग्रिडलेआउट :यह सभी घटकों को समान आकार की कोशिकाओं . के ग्रिड में व्यवस्थित करता है , उन्हें बाएं से दाएं . जोड़ना टी और ऊपर से नीचे . एक सेल में केवल एक घटक रखा जा सकता है और ग्रिड के प्रत्येक क्षेत्र का आकार समान होगा। जब कंटेनर का आकार बदल दिया जाता है, तो सभी सेल स्वचालित रूप से आकार बदल जाते हैं। घटकों को एक सेल में रखने का क्रम निर्धारित किया जाता है क्योंकि उन्हें जोड़ा गया था।
  • ग्रिडबैगलाउट :यह एक शक्तिशाली लेआउट है जो सभी घटकों को कोशिकाओं के ग्रिड में व्यवस्थित करता है और जब भी कंटेनर का आकार बदलता है तो वस्तु के पहलू अनुपात को बनाए रखता है। इस लेआउट में, सेल आकार में भिन्न हो सकते हैं। यह घटकों के बीच एक सुसंगत क्षैतिज और ऊर्ध्वाधर अंतर प्रदान करता है। यह हमें कॉलम या पंक्तियों के भीतर घटकों के लिए एक डिफ़ॉल्ट संरेखण निर्दिष्ट करने की अनुमति देता है।
  • बॉक्सलेआउट :यह कई घटकों को लंबवत या क्षैतिज रूप से . में व्यवस्थित करता है , लेकिन दोनों नहीं। घटकों को बाएं से दाएं या ऊपर से नीचे . से व्यवस्थित किया जाता है . यदि घटक क्षैतिज संरेखित हैं , सभी घटकों की ऊंचाई समान होगी और सबसे बड़े आकार के घटकों के बराबर होगी। यदि घटक लंबवत संरेखित हैं , सभी घटकों की चौड़ाई समान होगी और सबसे बड़ी चौड़ाई वाले घटकों के बराबर होगी।
  • कार्डलेआउट :यह समान आकार वाले दो या दो से अधिक घटकों को व्यवस्थित करता है। घटक एक डेक में व्यवस्थित हैं , जहां समान आकार के सभी कार्ड और केवल शीर्ष कार्ड किसी भी समय दिखाई देते हैं . कंटेनर में जोड़ा गया पहला घटक डेक के शीर्ष पर रखा जाएगा। बाएँ, दाएँ, ऊपर और नीचे के किनारों पर डिफ़ॉल्ट गैप शून्य है और कार्ड के घटक या तो क्षैतिज या लंबवत रूप से प्रदर्शित होते हैं।

उदाहरण

import java.awt.*;
import javax.swing.*;
public class LayoutManagerTest extends JFrame {
   JPanel flowLayoutPanel1, flowLayoutPanel2, gridLayoutPanel1, gridLayoutPanel2, gridLayoutPanel3;
   JButton one, two, three, four, five, six;
   JLabel bottom, lbl1, lbl2, lbl3;
   public LayoutManagerTest() {
      setTitle("LayoutManager Test");
      setLayout(new BorderLayout()); // Set BorderLayout for JFrame
      flowLayoutPanel1 = new JPanel();
      one = new JButton("One");
      two = new JButton("Two");
      three = new JButton("Three");
      flowLayoutPanel1.setLayout(new FlowLayout(FlowLayout.CENTER)); // Set FlowLayout Manager
      flowLayoutPanel1.add(one);
      flowLayoutPanel1.add(two);
      flowLayoutPanel1.add(three);
      flowLayoutPanel2 = new JPanel();
      bottom = new JLabel("This is South");
      flowLayoutPanel2.setLayout (new FlowLayout(FlowLayout.CENTER)); // Set FlowLayout Manager
      flowLayoutPanel2.add(bottom);
      gridLayoutPanel1 = new JPanel();
      gridLayoutPanel2 = new JPanel();
      gridLayoutPanel3 = new JPanel();
      lbl1 = new JLabel("One");
      lbl2 = new JLabel("Two");
      lbl3 = new JLabel("Three");
      four = new JButton("Four");
      five = new JButton("Five");
      six = new JButton("Six");
      gridLayoutPanel2.setLayout(new GridLayout(1, 3, 5, 5)); // Set GridLayout Manager
      gridLayoutPanel2.add(lbl1);
      gridLayoutPanel2.add(lbl2);
      gridLayoutPanel2.add(lbl3);
      gridLayoutPanel3.setLayout(new GridLayout(3, 1, 5, 5)); // Set GridLayout Manager
      gridLayoutPanel3.add(four);
      gridLayoutPanel3.add(five);
      gridLayoutPanel3.add(six);
      gridLayoutPanel1.setLayout(new GridLayout(2, 1)); // Set GridLayout Manager
      gridLayoutPanel1.add(gridLayoutPanel2);
      gridLayoutPanel1.add(gridLayoutPanel3);
      add(flowLayoutPanel1, BorderLayout.NORTH);
      add(flowLayoutPanel2, BorderLayout.SOUTH);
      add(gridLayoutPanel1, BorderLayout.CENTER);
      setSize(400, 325);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String args[]) {
      new LayoutManagerTest();
   }
}

आउटपुट

Java में LayoutManager और LayoutManager के प्रकार क्या हैं?


  1. फर्मवेयर क्या है? परिभाषा और प्रकार

    हार्डवेयर के लिए सॉफ़्टवेयर . के रूप में बेहतर जाना जाता है , फर्मवेयर एक प्रोग्राम है जो हार्डवेयर के एक टुकड़े में एम्बेडेड होता है जैसे कि कीबोर्ड, हार्ड ड्राइव, BIOS, या वीडियो कार्ड। इसे सिस्टम में अन्य उपकरणों के साथ संचार करने और बुनियादी इनपुट/आउटपुट कार्यों जैसे कार्यों को करने के लिए स्थाय

  1. जावा और जावास्क्रिप्ट में क्या अंतर है?

    जैसा कि वेब डेवलपर जेरेमी कीथ ने 2009 में कहा था, जावा जावास्क्रिप्ट के लिए है जैसे हैम हैम्स्टर के लिए है। उस सादृश्य की सटीक सटीकता बहस का विषय है, लेकिन इसके पीछे की भावना ठोस है:जावा और जावास्क्रिप्ट, एक सामान्य भाषाई मूल साझा करने के बावजूद, दो बहुत अलग प्रोग्रामिंग भाषाएं हैं। इन वर्षों में, व

  1. OLED Screen क्या है और इसके प्रकार

    Digital प्रदर्शन प्रौद्योगिकी में सुधार हुआ है और अत्यधिक विकसित हुआ है। डिस्प्ले निर्माता ऐसी स्क्रीन बनाने की कोशिश कर रहे हैं जो न केवल किफायती और टिकाऊ हों बल्कि देखने का बेहतरीन अनुभव भी प्रदान करें। यदि हम अपने आस-पास देखें तो पाएंगे कि हमारे द्वारा उपयोग किए जाने वाले अधिकांश इलेक्ट्रॉनिक उपक