Mengenal kelas JSpinner di program Java
Mengenal dan Menggunakan Kelas JSpinner Di Program Java
Pin It
Obyek dari kelas JSpinner merupakan komponen Java yang digunakan sebagai input field yang memperbolehkan pengguna program atau user untuk memilih sebuah nilai angka atau obyek dari rangkaian yang terurut. Untuk membuat rangkaian obyek yang terurut seperti nama hari, bulan atau tanggal, Anda perlu menggunakan spinner models.

JSpinner merupakan turunan dari kelas JComponent dengan tampilan berupa kotak teks dan sepasang tombol panah kecil di sisi sebelah kanan. JSpinner memiliki dua konstruktor dan beberapa metoda penting. Berikut ini adalah tabel daftar konstruktor dan beberapa metoda penting dari kelas JSpinner:

Tabel konstruktor kelas JSpinner

Konstruktor Keterangan
JSpinner() Mengkonstruksi obyek spinner dengan model SpinnerNumberModel dengan nilai awal 0 tanpa batasan minimum dan maksimum.
JSpinner(SpinnerModel model) Mengkonstruksi obyek spinner dengan menentukan SpinnerModel

Tabel metoda kelas JSpinner

Metoda Keterangan
addChangeListener(ChangeListener listener) Menambahkan listener untuk perubahan nilai.
getValue() Mengembalikan obyek berupa nilai elemen dari obyek spinner saat ini.
getNextValue() Mengembalikan objek berupa nilai elemen berikutnya dari obyek spinner.
getPreviousValue() Mengembalikan obyek berupa nilai elemen sebelumnya dari obyek spinner.
setValue(Object value) Mengatur ulang nilai elemen saat ini.
setEditor(JComponent editor) Menentukan ulang editor yang menampilkan nilai saat ini dari SpinnerModel.
setModel(SpinnerModel model) Menentukan ulang model yang mewakili nilai obyek spinner.

Contoh program berikut ini mendemonstrasikan bagaimana membuat obyek spinner serta menampilkan nilai sebelumnya (previous value), nilai saat ini (current value) dan nilai berikutnya (next value). Pengguna aplikasi (user) juga dapat menavigasi nilai yang sedang ditampilkan dengan mengklik salah satu dari dua anak panah kecil yang berada di posisi sebelah kanan.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// Nama file : DemoSpinner.java
// Mendemonstrasikan bagaimana membuat obyek spinner

// Mengimpor kelas
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;

// Deklarasi kelas
public class DemoSpinner extends JFrame {

   private JLabel lblPrev = new JLabel("", JLabel.LEFT);
   private JLabel lblCurrent = new JLabel("", JLabel.LEFT);
   private JLabel lblNext = new JLabel("", JLabel.LEFT);
   private JSpinner spinner = new JSpinner();

   // Konstruktor tanpa argumen
   public DemoSpinner() {

      // Mengelompokkan label
      JPanel panel = new JPanel();
      panel.setLayout(new GridLayout(3, 1));
      panel.add(lblPrev);
      panel.add(lblCurrent);
      panel.add(lblNext);

     // Menampilkan nilai spinner awal
     lblPrev.setText("Nilai sebelumnya : " + spinner.getPreviousValue());
     lblCurrent.setText("Nilai saat ini : " + spinner.getValue());
     lblNext.setText("Nilai berikutnya : " + spinner.getNextValue());

     // Penanganan event spinner
     spinner.addChangeListener(new ChangeListener() {
        public void stateChanged(ChangeEvent ce) {
           lblPrev.setText("Nilai sebelumnya : " + spinner.getPreviousValue());
           lblCurrent.setText("Nilai saat ini : " + spinner.getValue());
           lblNext.setText("Nilai berikutnya : " + spinner.getNextValue());
        }
     });

      getContentPane().add(spinner, BorderLayout.PAGE_START);
      getContentPane().add(panel, BorderLayout.CENTER);
   }

   // Metoda Main
   public static void main(String[] args) {
      DemoSpinner frame = new DemoSpinner();
      frame.setTitle("Kelas DemoSpinner");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(220, 125);
      frame.setVisible(true);
   }
}

Menggunakan kelas JSpinner di Java

Baris nomor 15 adalah pernyataan untuk mengkonstruksi obyek spinner menggunakan konstruktor tanpa argumen pada tabel konstruktor di atas. Dengan konstruktor ini, secara default, obyek spinner akan menampilkan nilai integer dengan nilai awal adalah 0 dan tanpa batasan nilai minimum maupun maksimum. Untuk menampilkan nilai sebelumnya, saat ini dan sesudahnya, digunakan metoda getPreviousValue, getValue dan getNextValue.

Produk Toko Gerzal

Edifier R1700BT Active 2.0 Bluetooth Bookshelf Speaker Set

Edifier R1700BT Active 2.0 Bluetooth Bookshelf Speaker Set

Beli di Shopee
Sunbuck AV-555BT Audio Amplifier Bluetooth 5.0 Microphone HiFi

Sunbuck AV-555BT Audio Amplifier Bluetooth 5.0 Microphone HiFi

Beli di Shopee
QUEED Power Supply Station Generator 220V 69800mAh

QUEED Power Supply Station Generator 220V 69800mAh

Beli di Shopee
Fosi Audio V3 Power Amplifier 2 Channel Audio Stereo Hi-Fi TI TPA3255

Fosi Audio V3 Power Amplifier 2 Channel Audio Stereo Hi-Fi

Beli di Shopee
Fosi Audio MC101 Mini Bluetooth Stereo Amplifier With VU Meter

Fosi Audio MC101 Mini Bluetooth Stereo Amplifier With VU Meter

Beli di Shopee