New!
×Close

Notifications

Disqus Logo
MASIGNCLEAN104

Cara Membuat jRadioButton Pada Komponen Swing di Java

Radio button pada komponen swing dijava merupakan komponen yang digunakan dalam suatu pemilihan. Radio button memungkinkan kita untuk memilih satu dari begitu banyak pilihan yang tersedia. Komponen ini juga sangat sering digunakan dalam membuat suatu sistem informasi. Berikut kode program untuk membuat radio button di java yang simple. 
package palette;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
/**
 *
 * @author Java Developer
 */
public class belajarRadio extends JFrame{
    JLabel label = new JLabel("Apa Makanan Kesukaan Mu?" ,JLabel.CENTER);
    JRadioButton radio1 = new JRadioButton("A. Sari Roti");
    JRadioButton radio2 = new JRadioButton("B. Nasi Ampera 8000");
    JRadioButton radio3 = new JRadioButton("C. Masakan Ibu");
    JRadioButton radio4 = new JRadioButton("D. Masakan dikasih");
    JRadioButton radio5 = new JRadioButton("E. Semua jenis makanan");
    public belajarRadio(){
        JFrame frame = new JFrame("Belajar Radio Button - JSC");
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
        frame.setSize(new Dimension(300, 300));
        frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
        frame.setLayout(new GridLayout(6, 1));
        frame.add(label);
        frame.add(radio1);
        radio1.setHorizontalAlignment(JRadioButton.CENTER);
        frame.add(radio2);
        radio2.setHorizontalAlignment(JRadioButton.CENTER);
        frame.add(radio3);
        radio3.setHorizontalAlignment(JRadioButton.CENTER);
        frame.add(radio4);
        radio4.setHorizontalAlignment(JRadioButton.CENTER);
        frame.add(radio5);
        radio5.setHorizontalAlignment(JRadioButton.CENTER);
    }
    public static void main(String[] args) {
        new belajarRadio();
    }
}
Maka output yang dihasilkan dari kode program di atas seperti gambar dibawah ini.

Gambar 1 - jRadioButton Pada Komponen Swing
Gambar 1

Penjelasan :
Baris 13 - 17 merupakan kode program untuk membuat radio button.
Baris 26 - 35 merupakan kode program untuk menambah komponen radio button pada frame.

Namun pada output diatas , semua pilihan dapat kita pilih. Hal ini tentu tidak sesuai dengan penjelasan mengenai radio button diatas. Lalu bagaimana agar hanya dapat memilih satu pilihan pada radio button. Silahkan perhatikan kode program berikut dengan kondisi pemilihan yang berbeda.
package palette;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
/**
 *
 * @author Java Developer
 */
public class belajarRadio extends JFrame{
    JLabel label = new JLabel("Gender : " ,JLabel.CENTER);
    JRadioButton radio1 = new JRadioButton("Male");
    JRadioButton radio2 = new JRadioButton("Female");
    ButtonGroup grup = new ButtonGroup();
    public belajarRadio(){
        JFrame frame = new JFrame("Belajar Radio Button - JSC");
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
        frame.setSize(new Dimension(300, 100));
        frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
        frame.setLayout(new GridLayout(1, 1));
        frame.add(label);
        frame.add(radio1);
        radio1.setHorizontalAlignment(JRadioButton.CENTER);
        grup.add(radio1);
        frame.add(radio2);
        radio2.setHorizontalAlignment(JRadioButton.CENTER);
        grup.add(radio2);
    }
    public static void main(String[] args) {
        new belajarRadio();
    }
}
Output yang dihasilkan dari kode program diatas seperti gambar dibawah ini.

Gambar 2 - jRadioButton Pada Komponen Swing
Gambar 2

Penjelasan :
Agar kita hanya dapat memilih satu pilihan pada radio button, kita harus menggunakan button group. Perhatikan baris 27 dan 30 pada kode program di atas.

Melakukan beberapa kostumisasi (LaF) pada radio button, silahkan perhatikan kode program dibawah ini.
package palette;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridLayout;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
/**
 *
 * @author Java Developer
 */
public class belajarRadio extends JFrame{
    JLabel label1 = new JLabel("Gender : " ,JLabel.CENTER);
    JLabel label2 = new JLabel("Jenis Kelamin : " ,JLabel.CENTER);
    JRadioButton radio1 = new JRadioButton("Male");
    JRadioButton radio2 = new JRadioButton("Female");
    JRadioButton radio3 = new JRadioButton("Laki-laki");
    JRadioButton radio4 = new JRadioButton("Perempuan");
    ButtonGroup grupEn = new ButtonGroup();
    ButtonGroup grupId = new ButtonGroup();
    Font font = new Font("Agency Fb", Font.BOLD , 15);
    Color warna = Color.decode("#f75461");
    public belajarRadio(){
        JFrame frame = new JFrame("Belajar Radio Button - JSC");
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
        frame.setSize(new Dimension(300, 100));
        frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
        frame.setLayout(new GridLayout(2, 1));
        frame.add(label1 );
        frame.add(radio1);
        radio1.setBackground(Color.decode("#58aae4"));
        grupEn.add(radio1);
        frame.add(radio2);
        radio2.setBackground(Color.decode("#f7ae1d"));
        grupEn.add(radio2);
        frame.add(label2 );
        frame.add(radio3);
        radio3.setSelected(true);
        radio3.setFont(font);
        radio3.setForeground(warna);
        grupId.add(radio3);
        frame.add(radio4);
        radio4.setFont(font);
        radio4.setForeground(warna);
        grupId.add(radio4);
    }
    public static void main(String[] args) {
        new belajarRadio();
    }
}
Output dari kode program diatas adalah seperti gambar dibawah.

Gambar 3 - jRadioButton Pada Komponen Swing
Gambar 3

Masih banyak lagi cara untuk menseting Laf pada radio button, silahkan anda eksplor sebanyak mungkin dari radio button di java. Anda juga dapat berbagi pengalaman mengenai pembuatan radio button melalui kolom komentar blog.
Share This :