Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

Swingطريقة ترتيب محتوى الـ JFrame بشكل متوازي عامودياً بواسطة الكلاس GroupLayout

المثال التالي يعلمك طريقة ترتيب محتوى الـ Frame بشكل متوازي عامودياً بواسطة الكلاس GroupLayout.


مثال

Main.java
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.GroupLayout;
import java.awt.Container;
 
public class Main {
 
    public static void main(String[] args) {
 
        // أي قمنا بإنشاء نافذة مع وضع عنوان لها JFrame هنا أنشأنا كائن من الكلاس
        JFrame frame = new JFrame("GroupLayout demo");
 
        // لترتيب الأشياء التي نضيفها بداخلها GroupLayout هنا جعلنا النافذة تستخدم الـ
        Container container = frame.getContentPane();
        GroupLayout groupLayout = new GroupLayout(container);
        container.setLayout(groupLayout);
 
        // هنا قمنا بإضافة هوامش بين النافذة و المجموعة و بين جميع الأشياء التي سنضيفها في المجموعة
        groupLayout.setAutoCreateGaps(true);
        groupLayout.setAutoCreateContainerGaps(true);
        groupLayout.preferredLayoutSize(container);
 
        // هنا قمنا بتعريف 3 أزرار
        JButton btn1 = new JButton("Button 1");
        JButton btn2 = new JButton("Button 2");
        JButton btn3 = new JButton("Button 3");
 
        // هنا قمنا بترتيب جميع الأزرار في نفس المجموعة بشكل متوازي أفقياً
        groupLayout.setHorizontalGroup(
            groupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
                .addComponent(btn1)
                .addComponent(btn2)
                .addComponent(btn3));
 
        // هنا قمنا بترتيب جميع الأزرار في نفس المجموعة بشكل أفقياً وراء بعضهم البعض
        groupLayout.setVerticalGroup(
            groupLayout.createSequentialGroup()
                .addComponent(btn1)
                .addComponent(btn2)
                .addComponent(btn3));
 
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   // هنا جعلنا زر الخروج من النافذة يغلق البرنامج
        frame.pack();                                           // هنا جعلنا حجم النافذة يناسب حجم المحتوى
        frame.setVisible(true);                                 // هنا جعلنا النافذة مرئية
 
    }
 
}

ستظهر لك النافذة التالية عند التشغيل.

طريقة ترتيب محتوى ال JFrame بشكل متوازي عامودياً بواسطة الكلاس GroupLayout في جافا