Contoh program berikut ini menampilkan obyek list yang berisi daftar judul buku yang dapat dipilih oleh pengguna aplikasi (application user). Keterangan mengenai jumlah dan judul buku yang dipilih, kemudian disimpan di obyek text area (obyek dari kelas JTextArea). Berikut ini adalah kode program dan hasil eksekusinya:
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 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | // Nama file : DaftarJudulBuku.java // Menggunakan kelas JList untuk menampilkan daftar judul buku // Mengimpor kelas import java.awt.*; import javax.swing.*; import javax.swing.event.*; // Deklarasi kelas public class DaftarJudulBuku extends JFrame implements ListSelectionListener { private JList list; private JLabel label; private JTextArea textArea; private JScrollPane scrollPane1, scrollPane2; private JPanel panel; // Deklarasi larik string untuk judul buku private String[] judulBuku = {"Pemrograman PHP", "Pemrograman Java", "Microsoft Word 2010", "Excel 2010 Tingkat Lanjut", "Microsoft Access 2010", "Pemrograman Phyton", "Database MySQL", "Microsoft PowerPoint 2010", "Microsoft Word 2007 & VBA", "Trik Memperbaiki PC dan Laptop", "Java Project With NetBeans IDE", "Trik Memperbaiki Ponsel"}; // Konstruktor tanpa argumen public DaftarJudulBuku() { Font font = new Font("Tahoma", Font.PLAIN, 12); list = new JList(judulBuku); list.setVisibleRowCount(7); list.setFont(font); scrollPane1 = new JScrollPane(list); label = new JLabel("Pilih judul buku dari daftar berikut :"); label.setFont(font); panel = new JPanel(); panel.setLayout(new BorderLayout(0, 3)); panel.add(label, BorderLayout.PAGE_START); panel.add(scrollPane1, BorderLayout.CENTER); textArea = new JTextArea(); textArea.setEditable(false); textArea.setLineWrap(true); textArea.setWrapStyleWord(true); textArea.setFont(font); scrollPane2 = new JScrollPane(textArea); // Meregistrasi listener list.addListSelectionListener(this); getContentPane().add(scrollPane2, BorderLayout.CENTER); getContentPane().add(panel, BorderLayout.LINE_START); } // Menangani event (aksi) pemilihan judul buku public void valueChanged(ListSelectionEvent e) { Object[] judulDipilih = list.getSelectedValues(); String str = "Jumlah judul buku yang dipilih : " + judulDipilih.length; str +="\nJudul buku yang dipilih :\n"; for (int x = 0; x < judulDipilih.length; x++) { str += (x + 1) + " " + judulDipilih[x]; str += (x < judulDipilih.length - 1) ? "\n" : ""; } textArea.setText(str); } // Metoda main public static void main(String[] args) { DaftarJudulBuku frame = new DaftarJudulBuku(); frame.setTitle("Kelas DaftarJudulBuku"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 190); frame.setVisible(true); } } |

Kelas DaftarJudulBuku merupakan perluasan kelas JFrame yang mengimplementasikan interfes ListSelectionlistener. Program akan merespon setiap aksi pemilihan item atau judul buku di obyek list. Ketika pengguna aplikasi memilih judul buku di obyek list, program akan mengeksekusi blok metoda valueChanged (baris nomor 59 – 70).
Di blok metoda valueChanget, variabel judulDipilih yang mengacu ke larik obyek dideklarasikan (baris nomor 61). Elemen dari larik ini adalah judul buku yang telah dipilih (list.getSelectedValues()). Baris nomor 63 - 68 adalah pernyataan untuk merangkai string yang terdiri dari string jumlah dan daftar judul buku yang dipilih. Rangkaian string yang disimpan di variabel string str kemudian ditampilkan di obyek text area menggunakan metoda setText (baris nomor 69).