Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธีจัดเรียง JRadioButton แบบแนวนอนใน Java

JRadioButton เป็นคลาสย่อยของ JToggleButton และเป็นปุ่มสองสถานะที่สามารถ เลือก (selected) หรือ ไม่เลือก (deselected) ได้ ต่างจาก Checkbox ปุ่ม Radio จะเชื่อมโยงกับกลุ่ม และในกลุ่มเดียวกันจะเลือกได้เพียงปุ่มเดียว ซึ่งสามารถทำได้ด้วยคลาส ButtonGroup เมื่อเลือกปุ่ม Radio ในกลุ่ม ปุ่มที่เคยเลือกไว้ก่อนหน้าจะถูกยกเลิกการเลือกอัตโนมัติ เราสามารถจัดเรียงปุ่ม Radio แบบแนวนอนหรือแนวตั้งได้โดยใช้ BoxLayout

ตัวอย่างโค้ด

import java.awt.*;
import javax.swing.*;

public class HorizontalRadioButtonsTest extends JPanel {
    public HorizontalRadioButtonsTest() {
        JRadioButton jrb1 = new JRadioButton(" RB1");
        JRadioButton jrb2 = new JRadioButton(" RB2");
        JRadioButton jrb3 = new JRadioButton(" RB3");
        JRadioButton jrb4 = new JRadioButton(" RB4");
        JRadioButton jrb5 = new JRadioButton(" RB5");
        Box box1 = Box.createHorizontalBox();
        box1.add(jrb1);
        box1.add(jrb2);
        box1.add(jrb3);
        box1.add(jrb4);
        box1.add(jrb5);

        JRadioButton jrb6 = new JRadioButton(" RB6");
        JRadioButton jrb7 = new JRadioButton(" RB7");
        JRadioButton jrb8 = new JRadioButton(" RB8");
        JRadioButton jrb9 = new JRadioButton(" RB9");
        JRadioButton jrb10 = new JRadioButton(" RB10");
        Box box2 = Box.createHorizontalBox();
        box2.add(jrb6);
        box2.add(jrb7);
        box2.add(jrb8);
        box2.add(jrb9);
        box2.add(jrb10);

        JRadioButton jrb11 = new JRadioButton(" RB11");
        JRadioButton jrb12 = new JRadioButton(" RB12");
        JRadioButton jrb13 = new JRadioButton(" RB13");
        JRadioButton jrb14 = new JRadioButton(" RB14");
        JRadioButton jrb15 = new JRadioButton(" RB15");
        Box box3 = Box.createHorizontalBox();
        box3.add(jrb11);
        box3.add(jrb12);
        box3.add(jrb13);
        box3.add(jrb14);
        box3.add(jrb15);

        JRadioButton jrb16 = new JRadioButton(" RB16");
        JRadioButton jrb17 = new JRadioButton(" RB17");
        JRadioButton jrb18 = new JRadioButton(" RB18");
        JRadioButton jrb19 = new JRadioButton(" RB19");
        JRadioButton jrb20 = new JRadioButton(" RB20");
        Box box4 = Box.createHorizontalBox();
        box4.add(jrb16);
        box4.add(jrb17);
        box4.add(jrb18);
        box4.add(jrb19);
        box4.add(jrb20);

        setLayout(new GridLayout(5, 1));
        add(box1);
        add(box2);
        add(box3);
        add(box4);
    }

    public static void main(String[] args) {
        JFrame frame = new JFrame("HorizontalRadioButtons Test");
        frame.add(new HorizontalRadioButtonsTest());
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLocationRelativeTo(null);
        frame.setSize(375, 250);
        frame.setVisible(true);
    }
}

ผลลัพธ์

วิธีจัดเรียง JRadioButton แบบแนวนอนใน Java