Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Tutorial Java Swing: Membangun Aplikasi GUI yang Kuat

Apa Itu Swing di Java?

Java Swing adalah toolkit GUI yang canggih, independen platform, yang memperluas Abstract Window Toolkit (AWT). Ini menawarkan serangkaian widget yang kaya—tombol, tabel, pohon, dan lainnya—memungkinkan pengembang untuk membuat aplikasi desktop yang menawil tanpa harus menciptakan komponen dasar dari awal.

Sebagai bagian dari Java Foundation Classes (JFC), Swing membangun fungsionalitas inti AWT sambil menyediakan komponen yang ringkas dan dapat disesuaikan. Hasilnya adalah framework yang mendukung fitur UI lanjutan, seperti perubahan look-and-feel, custom painting, dan data binding.

Dalam tutorial ini, Anda akan menguasai:

Diagram Hierarki Kelas Java Swing

Tutorial Java Swing: Membangun Aplikasi GUI yang Kuat

Semua komponen Swing mewarisi dari JComponent dan dapat ditambahkan ke kelas container.

Apa Itu Kelas Container?

Kelas container adalah tulang punggung dari setiap UI Swing—mereka menyimpan dan mengorganisir komponen lainnya. Sebuah aplikasi Swing paling sedikit memerlukan satu container. Tiga tipe container utama adalah:

  1. JPanel – Container ringkas, non-jendela yang digunakan untuk mengelompokkan komponen.
  2. JFrame – Jendela tingkat atas yang mencakup bilah judul, batas, dan menu sistem.
  3. JDialog – Jendela pop-up modal atau non-modal untuk prompt pengguna.

Apa Itu GUI di Java?

Antarmuka Grafis Pengguna (GUI) di Java menyediakan lapisan visual yang intuitif bagi pengguna untuk berinteraksi dengan aplikasi. Dengan merakit tombol, label, kolom teks, dan widget lainnya, pengembang membuat pengalaman yang menarik yang mengabstrak logika yang mendasarinya.

Cara Membuat GUI di Java (Langkah demi Langkah)

Berikut adalah walkthrough praktis yang mengilustrasikan cara membuat jendela dasar dan secara progresif menambahkan komponen.

Langkah 1 – Buat File Java Baru

Salin kode berikut ke editor Anda:

import javax.swing.*;
class GuiDemo {
public static void main(String[] args) {
JFrame frame = new JFrame("My First GUI");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
JButton button = new JButton("Press");
frame.getContentPane().add(button);
frame.setVisible(true);
}
}

Langkah 2 – Kompilasi dan Jalankan

Simpan file, kompilasi dengan javac GuiDemo.java, lalu jalankan dengan java GuiDemo. Sebuah jendela 300 × 300 yang berisi satu tombol harus muncul.

Langkah 3 – Tambahkan Tombol Lainnya

Modifikasi kode untuk menyertakan tombol kedua:

import javax.swing.*;
class GuiDemo {
public static void main(String[] args) {
JFrame frame = new JFrame("My First GUI");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
JButton button1 = new JButton("Button 1");
JButton button2 = new JButton("Button 2");
frame.getContentPane().add(button1);
frame.getContentPane().add(button2);
frame.setVisible(true);
}
}

Langkah 4 – Perhatikan Masalah Tata Letak

Menjalankan kode sekarang menunjukkan dua tombol yang tumpang tindih karena layout manager default untuk JFrame adalah BorderLayout, yang menempatkan komponen di lima wilayah yang berbeda. Tanpa menentukan wilayah, komponen berikutnya menggantikan komponen sebelumnya.

Layout Manager Java

Layout manager mengontrol bagaimana komponen disusun dalam container. Memilih manajer yang tepat sangat penting untuk GUI yang responsif dan mudah dipelihara. Manajer yang paling sering digunakan adalah:

BorderLayout

BorderLayout membagi container menjadi lima area: NORTH, SOUTH, EAST, WEST, dan CENTER. Ini adalah manajer default untuk JFrame.

Tutorial Java Swing: Membangun Aplikasi GUI yang Kuat

FlowLayout

FlowLayout menyusun komponen secara berurutan dalam baris, bergulir ke baris berikutnya sesuai kebutuhan. Ini adalah manajer default untuk JPanel.

Tutorial Java Swing: Membangun Aplikasi GUI yang Kuat

GridBagLayout

GridBagLayout menawarkan fleksibilitas tertinggi, memungkinkan komponen untuk menempati beberapa baris atau kolom dan untuk rata dengan presisi dalam grid.

Tutorial Java Swing: Membangun Aplikasi GUI yang Kuat

Contoh: Membangun Jendela Chat Sederhana

Berikut adalah program lengkap yang mendemonstrasikan cara menggabungkan menu, area teks, dan panel kontrol menjadi antarmuka chat yang kohesif.

Tutorial Java Swing: Membangun Aplikasi GUI yang Kuat

Coba kode sendiri sebelum meninjau solusinya.

// Sebuah aplikasi Swing lengkap yang mencakup menu, area teks, dan kontrol
import javax.swing.*;
import java.awt.*;
class GuiDemo {
public static void main(String[] args) {
JFrame frame = new JFrame("Chat Frame");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 400);
// Menu bar
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("FILE");
JMenu helpMenu = new JMenu("Help");
menuBar.add(fileMenu);
menuBar.add(helpMenu);
JMenuItem openItem = new JMenuItem("Open");
JMenuItem saveItem = new JMenuItem("Save as");
fileMenu.add(openItem);
fileMenu.add(saveItem);
// Panel bawah dengan FlowLayout (default)
JPanel panel = new JPanel();
panel.add(new JLabel("Enter Text"));
panel.add(new JTextField(10));
panel.add(new JButton("Send"));
panel.add(new JButton("Reset"));
// Area teks di tengah
JTextArea textArea = new JTextArea();
// Tambahkan komponen ke frame menggunakan BorderLayout
frame.getContentPane().add(BorderLayout.SOUTH, panel);
frame.getContentPane().add(BorderLayout.NORTH, menuBar);
frame.getContentPane().add(BorderLayout.CENTER, textArea);
frame.setVisible(true);
}
}

java

  1. Menerapkan Aplikasi Java EE di Microsoft Azure: Panduan Langkah demi Langkah
  2. Membuat Daftar String dalam VHDL: Praktik Terbaik & Contoh
  3. Tutorial Array Java: Deklarasi, Pembuatan, dan Inisialisasi – Kode Contoh
  4. Membuat Array Objek di Java: Panduan Langkah demi Langkah
  5. Menghasilkan Angka Acak di Java: Panduan Praktis dengan Random dan Math.random
  6. Membaca File di Java dengan BufferedReader – Panduan Praktis dengan Contoh
  7. Mengonversi Char ke String di Java – Contoh Praktis dan Praktik Terbaik
  8. Membalikkan String di Java Menggunakan Rekursi – Panduan Langkah demi Langkah
  9. Java 10: Meningkatkan Performa dengan Class-Data Sharing (CDS)
  10. Mengembangkan Aplikasi Konsol PLCnext Menggunakan C#: Panduan untuk Pemula