Fungsi utama kotak dialog adalah untuk aplikasi atau situs web untuk mengambil beberapa masukan dari pengguna. Masukan itu bisa berupa pengakuan bahwa mereka telah membaca pesan atau sesuatu yang mereka masukkan ke dalam area teks.

Kotak dialog segera menarik perhatian pengguna. Ini adalah alat yang sempurna untuk mengumpulkan atau menampilkan informasi penting.

Java adalah bahasa yang beragam yang menyediakan beberapa kelas untuk membuat kotak dialog. Kelas-kelas ini termasuk JOptionPane, JDialog, dan JFrame.

Kelas JOptionPane

Anda dapat membuat kotak dialog standar menggunakan salah satu dari beberapa metode statis milik kelas JOptionPane. Ini termasuk:

  • showMessageDialog(), yang menyampaikan pesan kepada pengguna.
  • tampilkanKonfirmasiDialog(), yang menanyakan pertanyaan yang memerlukan konfirmasi.
  • tampilkanInputDialog(), yang meminta pengguna untuk memasukkan.
  • showOptionDialog(), yang merupakan kombinasi dari ketiga metode lainnya.

Membuat Kotak Dialog JOptionPane

impor javax.swing. JFrame;
instagram viewer

impor javax.swing. JOptionPane;

publikkelasJOptionPaneApp{
JOptionPaneApp() {
Bingkai JFrame = baru JFrame();
JOptionPane.showMessageDialog (bingkai, "Ini adalah jendela pesan JOptionPane.");
}

publikstatisruang kosongutama(String[] argumen){
baru JOptionPaneApp();
}
}

Kode di atas membuat kotak dialog berikut:

Meskipun JOptionPane menyediakan kotak dialog standar, ia memiliki banyak opsi yang memungkinkan Anda untuk mengubah perilakunya. Misalnya, dialog pesan dapat mengambil salah satu dari beberapa jenis. Yang di atas adalah contoh dari INFORMATION_MESSAGE, yang merupakan default. Jenis pesan lainnya adalah:

  • PESAN EROR
  • PESAN PERINGATAN
  • QUESTION_MESSAGE
  • PLAIN_MESSAGE

Membuat Pesan Kesalahan

Berikut adalah contoh bagaimana menggunakan jenis pesan yang berbeda untuk dialog JOptionPane Anda:

JOptionPane.showMessageDialog (bingkai, "Ini adalah jendela pesan kesalahan JOptionPane.",
"Kesalahan", JOptionPane. PESAN EROR);

Ganti showMessageDialog() baris di program asli dengan baris kode di atas, dan Anda akan melihat dialog kesalahan berikut:

Kelas JDialog

Kelas JDialog memungkinkan Anda membuat kotak dialog khusus. Ini kelas jawa milik javax.swing paket dan memperluas kelas Dialog. Ini memiliki akses ke berbagai metode langsung dan tidak langsung. Kelas Java ini memiliki total 16 Konstruktor Java.

Terlepas dari konstruktor default, masing-masing dari 15 lainnya mengambil bingkai, jendela, atau dialog dengan kombinasi beberapa argumen lainnya.

Konstruktor JDialog utama meliputi:

  • JDialog() membuat kotak dialog tanpa bingkai, judul, atau mode.
  • JDialog (Pemilik dialog, Judul string, modal boolean) membuat kotak dialog dengan pemilik Dialog, judul string, dan mode.
  • JDialog (Pemilik bingkai, Judul string, modal boolean) membuat kotak dialog dengan pemilik Frame, judul string, dan mode.
  • JDialog (Pemilik jendela, Judul string, modal boolean) membuat kotak dialog dengan pemilik Window, judul string, dan mode.

Membuat Kotak Dialog JDialog

impor jawa.awt. Tata Letak Aliran;
impor java.awt.event. AcaraAksi;
impor java.awt.event. Pendengar Tindakan;
impor javax.swing. JTombol;
impor javax.swing. JDialog;
impor javax.swing. JFrame;
impor javax.swing. JLabel;
impor javax.swing. Konstanta Jendela;

publikkelasJDialogApp{
JDialogApp() {
Bingkai JFrame = baru JFrame();
Dialog JDialog = baru JDialog (bingkai, BENAR);
dialog.setLayout(baru Tata Letak Aliran());

JLabel displayText = baru JLabel("Ini adalah jendela JDialog.");
JButton btn = baru JButton("Oke");

btn.addActionListener(baru Pendengar Tindakan() {
publikruang kosongtindakan dilakukan(AcaraAksi e){
dialog.setTerlihat(Salah);
}
});

dialog.add (teks tampilan);
dialog.add (btn);

dialog.setUkuran(200,150);
dialog.setTitle("Jendela Dialog");
dialog.setTerlihat(BENAR);
dialog.setDefaultCloseOperation (WindowConstants. DISPOSE_ON_CLOSE);
}

publikstatisruang kosongutama(String argumen[]){
baru JDialogApp();
}
}

Kode di atas membuat kotak dialog berikut:

Ada beberapa aspek penting dari kode yang harus Anda perhatikan. Program ini menggunakan JDialog (Pemilik bingkai, modal Boolean) konstruktor, yang dilewatinya a JFrame dan nilai "benar" sebagai argumen. JFrame adalah pemilik JDialog, yang berarti bertanggung jawab untuk menampilkan kotak dialog. Nilai "benar" berarti bahwa dialog memblokir input ke jendela terkait lainnya saat ditampilkan.

Konstruktor dalam kode di atas tidak mengambil judul sebagai argumennya. Namun, pemilik bingkai membutuhkan judul. Jadi, untuk tugas itu, Anda dapat menggunakan setJudul() metode, yang tersedia melalui kelas Dialog yang diperluas JDialog. Metode penting lainnya dalam kode adalah setTerlihat(), setUkuran(), dan setDefaultCloseOperation().

setVisible mengambil nilai Boolean dan bertanggung jawab untuk menampilkan frame. setSize mengambil tinggi dan lebar jendela dialog. setDefaultCloseOperation mengambil satu dari tiga nilai untuk memutuskan apa yang terjadi ketika pengguna menutup dialog.

Kelas JFrame

JDialog dan JOptionPane keduanya menggunakan kelas JFrame untuk membuat kotak dialog. Namun, kelas JFrame dapat membuat kotak dialog sendiri. Kelas JFrame memperluas kelas Frame dan, seperti kelas JDialog, memungkinkan Anda untuk membuat kotak dialog khusus.

JFrame memiliki empat konstruktor dan beberapa metode langsung dan tidak langsung yang perlu Anda gunakan untuk membuat kotak dialog.

Membuat Kotak Dialog JFrame

impor java.awt.event. AcaraAksi;
impor java.awt.event. Pendengar Tindakan;

impor javax.swing. JTombol;
impor javax.swing. JFrame;
impor javax.swing. JLabel;
impor javax.swing. JPanel;
impor javax.swing. Konstanta Jendela;

publikkelasJFrameApp{
JFrameApp() {
Bingkai JFrame = baru JFrame();
frame.setTitle("Jendela Dialog");
Panel JPanel = baru Jpanel();

JLabel displayText = baru JLabel("Ini adalah jendela JFrame.");
panel.add (teks tampilan);
JButton btn = baru JButton("Tombol Oke");

btn.addActionListener(baru Pendengar Tindakan() {
publikruang kosongtindakan dilakukan(AcaraAksi e){
frame.setTerlihat(Salah);
}
});

panel.add (btn);

frame.add (panel);
frame.setDefaultCloseOperation (WindowConstants. EXIT_ON_CLOSE);
bingkai.setUkuran(250, 150);
frame.setTerlihat(BENAR);
}

publikstatisruang kosongutama(String[] argumen){
baru JFrameApp();
}
}

Kode di atas membuat kotak dialog berikut:

Kode menggunakan konstruktor JFrame default, dan beberapa metode yang sudah dikenal, seperti setJudul() metode (digunakan dalam aplikasi JDialog di atas). Objek yang tidak dikenal dalam program di atas adalah JPanel, yang merupakan wadah generik. Ini memberi JFrame fleksibilitas untuk menambahkan beberapa tata letak dan komponen ke bingkai.

Itu Pendengar Tindakan() dan tindakanDilakukan() metode menangani acara pengguna mengklik Oke tombol.

Kelas Java Mana yang Terbaik untuk Membuat Kotak Dialog?

Tujuan tunggal dari kelas JOptionPane adalah untuk membuat proses pembuatan kotak dialog lebih nyaman bagi pengembang Java. Namun, jika Anda membutuhkan kotak dialog yang lebih khusus, kelas JDialog adalah opsi terbaik berikutnya.

Kelas JFrame membuat UI, tetapi Anda dapat menggunakannya untuk membuat berbagai elemen GUI, termasuk kotak dialog.

Kotak dialog yang dibuat dengan kelas JFrame memiliki ikon yang diperkecil, sementara yang lain tidak. Jika Anda menginginkan kotak dialog modal, bahwa pengguna harus bertindak sebelum menyelesaikan tugas, maka JFrame bukanlah pendekatan terbaik.

Cara Menulis Aplikasi GUI Java Pertama Anda 

Baca Selanjutnya

MembagikanMenciakMembagikanSurel

Topik-topik yang berkaitan

  • Pemrograman
  • Pemrograman
  • Jawa
  • Tutorial Pengkodean

Tentang Penulis

Kadeisha Kean (56 Artikel Diterbitkan)

Kadeisha Kean adalah Pengembang Perangkat Lunak Full-Stack dan Penulis Teknis/Teknologi. Dia memiliki kemampuan yang berbeda untuk menyederhanakan beberapa konsep teknologi yang paling kompleks; menghasilkan materi yang dapat dengan mudah dipahami oleh setiap pemula teknologi. Dia bersemangat menulis, mengembangkan perangkat lunak yang menarik, dan berkeliling dunia (melalui film dokumenter).

More From Kadeisha Kean

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan