Cara Membuat aplikasi GUI di Java
Ringkasan
Di java, ayunan digunakan untuk membangun aplikasi GUI. Ini memiliki fitur yang berbeda dan populer digunakan untuk membangun aplikasi GUI di java. Pada artikel ini, kita akan membahas semua tentang perpustakaan ayunan di Jawa.
Ayunan Jawa
Swing dikembangkan di java murni. Komponen ayun dapat memiliki tampilan dan nuansa yang sama di semua platform dan menawarkan tampilan dan nuansa yang dapat dicolokkan. Komponen ayunan berbobot ringan.
Contoh:
Program java untuk menampilkan materi iklan dan menampilkan bingkai
impor javax.swing.*;
kelas F1 memperluas JFrame{
F1() {
setUkuran(200.200);
setTitle(“DEMO GUI”);
setLokasi(100.200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(benar);
}
public static void main(String args[]){
F1 f= baru F1();
}
}
Keluaran:
javac F1.java
F1 jawa
Hirarki wadah
Wadah tingkat atas:
- Tempatkan komponen ayunan lainnya untuk mengecat sendiri
- Misalnya. JFrame, JDialog, JApplet
- Menyederhanakan posisi komponen atom
- Misalnya, JPanel, JSplitPane, JTabbedPane
- Komponen mandiri yang menyajikan informasi kepada dan mendapatkan input dari pengguna
- Misalnya, JButton, JLabel, JComboBox, JTextField, JTable
- JButton adalah implementasi dari tombol "push".
- Tombol dapat dikonfigurasi dan pada tingkat tertentu dikendalikan oleh tindakan
- JOptionPane memudahkan untuk memunculkan kotak dialog standar yang meminta pengguna untuk suatu nilai atau memberi tahu mereka tentang sesuatu.
- Meskipun kelas mungkin terlihat rumit karena banyaknya metode, hampir semua penggunaan kelas ini adalah panggilan satu baris ke salah satu metode statis yang ditunjukkan di bawah ini:
Seperti kelas yang dapat memiliki variabel dan metode sebagai anggota, kelas tersebut juga dapat berisi kelas lain yang disebut kelas bersarang.
Konsep inner class diperkenalkan di java 1.1
Ada beberapa manfaat menggunakan kelas dalam:
- Membuat kode Anda lebih mudah dibaca
- Mengizinkan kelas utilitas dienkapsulasi di dalam kelas yang menggunakannya
- Menyederhanakan proses penulisan kelas, sehingga mendorong pengembang untuk lebih berorientasi objek.
Jenis-jenis inner class adalah sebagai berikut:
- Anggota kelas dalam
- Kelas dalam statis
- Kelas dalam lokal
- Kelas tanpa nama
Penanganan acara menggunakan kelas dalam anggota:
impor javax.swing.*;
import java.awt.*;
import java.awt.event.*;
kelas M1 memperluas JFrame
{
Wadah c;
JButton b1, b2;
kelas L1 mengimplementasikan ActionListener
{
public void actionPerformed(ActionEvent ae){
jika(ae.getSource()==b1)
{
JOptionPane.showMessageDialog(c, “Anda telah mengklik tombol 1”);
}
jika(ae.getSource()==b2)
{
JOptionPane.showMessageDialog(c,”Anda telah mengklik tombol 2”);
}
}
}
M1()
{
c=getContentPane();
c.setLayout(FlowLayout baru());
b1=new JButton(“Klik 1”);
b2= new JButton(“Klik 2”);
c.tambahkan(b1);
c.tambahkan(b2);
L1 a= baru L1();
b1.addActionListener(a);
b2.addActionListener(a);
}
public static void main(String args[]){
M1 f= baru M1();
f.setUkuran(200.200);
f.setTitle(“Klik Tombol”);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(benar);
}
}
Manajer tata letak
Manajer tata letak Java menentukan bagaimana komponen akan disusun saat ditambahkan ke bingkai. Paket AWT mencakup kelas tata letak berikut:
- FlowLayout
- BorderLayout
- GridLayout
FlowLayout
Tata letak aliran mengatur komponen dalam aliran terarah, seperti baris teks dalam paragraf, hingga tidak ada lagi ruang, lalu ke baris berikutnya.
Secara default, komponen berada di tengah. Pemrogram dapat menentukan perataan menggunakan salah satu argumen berikut dengan konstruktor:
- FlowLayout.LEFT
- FlowLayout.CENTER
- FlowLayout.KANAN
Tata letak perbatasan menjabarkan wadah, mengatur dan mengubah ukuran komponennya agar sesuai di lima wilayah: utara, selatan, timur, barat, dan tengah.
Setiap wilayah dapat berisi tidak lebih dari satu komponen dan ditentukan oleh konstanta yang sesuai: UTARA, SELATAN, EAAST, BARAT, dan PUSAT.
Pemrogram dapat menentukan wilayah menggunakan yang berikut dalam metode add:
- add("Utara", b1);
- add(“Selatan”,b2);
- add(“Timur”,b3);
- add(“Barat”,b4);
- tambah ("Pusat", b5);
- tambahkan(BorderLayout.NORTH,b1);
- tambahkan(BorderLayout.SOUTH,b2);
- tambahkan(BorderLayout.EAST,b3);
- tambahkan(BorderLayout.WEST,b4);
- tambahkan(BorderLayout.CENTER,b5);
Note2 : Kompilasi gagal jika nama konstanta tidak dalam huruf besar seperti yang ditunjukkan.
Note3 : Di atas bisa digabungkan juga.
JLabel
JLabel adalah area tampilan untuk string teks pendek atau gambar, atau keduanya. Label tidak bereaksi terhadap peristiwa masukan.
Program:
import java.awt.*;
impor javax.swing.*;
import java.awt.event.*;
kelas S2 memperluas JFrame{
Wadah c;
JTextField txt1;
JButton btn1;
JLabel lbl1, lbl2;
S2(){
c=getContentPane();
c.setLayout(FlowLayout baru());
lbl1= new JLabel(“Masukkan angka”);
txt1= JTextField baru(10);
btn1= new JButton(“Jawab”);
lbl2= baru JLabel();
c.tambahkan(lbl1);
c.tambahkan(txt1);
c.tambahkan(btn1);
c.tambahkan(lbl2);
btn1.addActionListener(baru L2());
}
public static void main(String args[]){
S2 frm= baru S2();
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setUkuran(250.150);
frm.setTitle(“Pencari Persegi”);
frm.setVisible(benar);
}
kelas L2 mengimplementasikan ActionListener{
public void actionPerformed(ActionEvent ae){
mencoba{
int a= Integer.ParseInt(txt1.getText());
float s=a*a;
lbl2.setText(“Square=”+s);
}
catch(NumberFormatException e){
JOptionPane.showMessageDialog(c,”Masukkan bilangan bulat”);
txt1.setText(“ “);
txt1.requestFocus();
}
}
}
}
Menangani Acara Papan Utama
Program:
import java.awt.*;
impor javax.swing.*;
import java.awt.event.*;
kelas S7 memperluas JFrame{
Wadah c;
JTextField txt1;
JButton btn1;
JLabel lbl1,lbl2;
S7(){
c=getContentPane();
c.setLayout(FlowLayout baru());
lbl1= new JLabel(“Masukkan angka”);
txt1= JTextField baru(10);
btn1= new JButton(“Jawab”);
lbl2= baru JLabel();
c.tambahkan(lbl1);
c.tambahkan(txt1);
c.tambahkan(btn1);
c.tambahkan(lbl2);
btn1.addActionListener(baru L2());
btn1.addKeyListener(baru L3());
}
public static void main(String args[]){
S7 frm= baru S7();
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setUkuran(250.150);
frm.setTitle(“Pencari Persegi”);
frm.setVisible(benar);
}
kelas L3 mengimplementasikan KeyListener
{
public void keyPressed(KeyEvent ke)
{
if(ke.getKeyCode()==KeyEvent.VK_ENTER);
mencoba{
int a= Integer.parseInt(txt1.getText());
float s=a*a;
lbl2.setText('Square='+s');
}
catch(NumberFormatException e){
JOptionPane.showMessageDialog(c,”Masukkan bilangan bulat”);
txt1.setText(“”);
txt1.requestFocus();
lbl2.setText(“”);
}
}
}
public void keyReleased(KeyEvent ke){}
public void keyTyped(KeyEvent ke){}
}
kelas L2 mengimplementasikan ActionListener{
public void actionPerformed(ActionEvent ae){
mencoba{
int a= Integer.parseInt(txt1.getText());
mengapung s=a*a;
lbl2.setText(“Square=”+s);
}
catch(NumberFormatExcepption e){
JOptionPane.showMessageDialog(c,”Masukkan bilangan bulat”);
txt1.setText(“”);
txt1.requestFocus();
lbl2.setText(“”);
}
}
}
}
Menangani Peristiwa Windows
Program :
import java.awt.*;
impor javax.swing.*;
import java.awt.event.*;
kelas S8 memperluas JFrame{
Wadah c;
JTextField txt1;
JButton btn1;
JLabel lbl1,lbl2;
S8(){
c=getContentPane();
c.setLayout(FlowLayout baru());
lbl1= new JLabel(“Masukkan angka”);
txt1= JTextField baru(10);
btn1= new JButton(“Jawab”);
lbl2= baru JLabel();
c.tambahkan(lbl1);
c.tambahkan(txt1);
c.tambahkan(btn1);
c.tambahkan(lbl2);
btn1.addActionListener(baru L2());
btn1.addKeyLisener(baru L3());
this.addWindowListener(new L4());
}
public static void main(String args[]){
S8 frm= baru S8();
frm.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
frm.setUkuran(250.150);
frm.setTitle(“Pencari Persegi”);
frm.setVisible(benar);
}
kelas L4 mengimplementasikan WindowListener{
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowOpened(WindowEvent e){
JOptionPane.showMessageDialog(c,”Selamat Datang di Kalkulator Persegi”);
}
public void windowClosed(WindowEvent e){}
public void windowClosing(WindowEvent e){
int output= JOptionPane.showConfirmDialog(c,”Apakah Anda ingin keluar”);
jika(keluaran==JOptionPane.YES_OPTION){
Sistem.keluar(1);
}
}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
}
kelas L2 mengimplementasikan ActionListener{
public void actionPerformed(ActionEvent ae){
mencoba{
int a=Integer.parseInt(txt1.getText());
mengapung s=a*a;
lbl2.setText(“Square=”+s);
}
catch(NumberFormatException e){
JOptionPane.showMessageDialog(c,”Masukkan bilangan bulat”);
txt1.setText(“”);
txt1.requestFocus();
lbl2.setText(“”);
}
}
}
kelas L3 mengimplementasikan KeyListener{
public void keyPressed(KeyEvent ke){
if(ke.getKeyCode()==KeyEvent.VK_ENTER){
mencoba{
int a= Integer.parseInt(txt1.getText());
mengapung s=a*a;
lbl2.setText(“Square=”+s);
}
catch(NumberFormatException e){
JOptionPane.showMessageDialog(c,”Masukkan bilangan bulat”);
txt1.setText(“”);
txt1.requestFocus();
lbl2.setText(“”);
}
}
}
public void keyReleased(KeyEvent ke){}
public void keyTyped(KeyEvent ke){}
}
}
Kesimpulan
Swing dikembangkan dalam java murni dan banyak digunakan karena memiliki tampilan dan nuansa yang sama di semua platform dan menawarkan tampilan dan nuansa yang dapat dicolokkan. Saya harap Anda menyukai artikel ini, beri tahu saya jika ada umpan balik. :) ❤️

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































