Struktur Kode Aplikasi Java (2) As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com
Contoh kode aplikasi berbasis window (5.1) import java.awt.Frame; import java.awt.Label; import java.awt.Font; class CobaSaja{ public static void main(String a[]){ Frame frm = new Frame(); Label pesan = new Label("Membuat program window"); pesan.setAlignment(Label.CENTER); pesan.setFont(new Font("Arial",30,Font.PLAIN)); frm.setTitle("Contoh Program"); frm.setSize(300,250); frm.add(pesan); frm.show(); }
Contoh kode window dengan listener (5.2) import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; class CobaSaja{ public static void main(String a[]){ Frame frm = new Frame(); Label pesan = new Label("Membuat program window"); pesan.setAlignment(Label.CENTER); pesan.setFont(new Font("Arial",30,Font.PLAIN)); frm.setTitle("Contoh Program"); frm.setSize(300,250); frm.add(pesan); frm.show(); frm.addWindowListener(new Deteksi()); }
class Deteksi extends WindowAdapter { public void windowClosing(WindowEvent we){ System.exit(0); }
Penjelasan Program 5.2 Listener adalah class yang dirancang untuk dapat “mendengar” aksi yang diberikan oleh user pada window atau komponen visual, seperti klik mouse atau penekanan tombol keyboard Di dalam satu file java di atas (CobaSaja.java) terdapat dua class, yaitu class CobaSaja dan class Deteksi Class Deteksi dibuat untuk dapat mendeteksi aksi yang terjadi pada sebuah window, misalnya aksi untuk menutup window yang sedang terbuka
Aplikasi penginputan (5.3) import java.awt.event.*; import java.awt.event.ActionListener; import java.awt.*; import java.awt.TextField; import java.awt.FlowLayout; import java.awt.Button; class CobaSaja{ public static void main(String a[]){ Frame frm = new Frame(); Label ketr = new Label("Ketik nama anda"); Label pesan = new Label(); TextField nama = new TextField(30); Button proses = new Button("Cetak"); ketr.setFont(new Font("Arial",30,Font.PLAIN)); frm.setTitle("Contoh Program"); frm.setSize(400,150); frm.setLayout(new FlowLayout(FlowLayout.LEFT,10,10));
frm.add(ketr); frm.add(nama); frm.add(proses); frm.add(pesan); frm.show(); frm.addWindowListener(new Deteksi()); proses.addActionListener(new Klik(pesan,nama,frm)); } class Deteksi extends WindowAdapter { public void windowClosing(WindowEvent we){ System.exit(0);
class Klik implements ActionListener { Frame f; Label l; TextField t; Klik(Label lbl, TextField tf, Frame fr){ this.l = lbl; this.t = tf; this.f = fr; } public void actionPerformed(ActionEvent ae) { l.setText("Nama anda " + t.getText()); f.validate();
Penjelasan Program 5.3 Pada contoh program di atas ditambahkan sebuah class, yaitu class Klik Class Klik dibuat untuk menangani aksi yang terjadi pada sebuah komponen selain window, misalnya button/tombol
Bentuk lain dari aplikasi 5.3 (5.4) import java.awt.event.*; import java.awt.*; class CobaSaja{ static Frame frm; static Label ketr; static Label pesan; static TextField nama; static Button proses; public static void main(String a[]){ frm = new Frame(); ketr = new Label("Ketik nama anda"); pesan = new Label(); nama = new TextField(30); proses = new Button("Cetak");
ketr.setFont(new Font("Arial",30,Font.PLAIN)); frm.setTitle("Contoh Program"); frm.setSize(400,150); frm.setLayout(new FlowLayout(FlowLayout.LEFT,10,10)); frm.add(ketr); frm.add(nama); frm.add(proses); frm.add(pesan); frm.show(); frm.addWindowListener(new Deteksi()); proses.addActionListener(new Klik()); } static void tampil(){ pesan.setText("Nama anda " + nama.getText()); frm.validate();
class Deteksi extends WindowAdapter { public void windowClosing(WindowEvent we){ System.exit(0); } class Klik implements ActionListener { public void actionPerformed(ActionEvent ae){ CobaSaja.tampil();
Penjelasan Program 5.4 Perbedaan mendasar dari program 5.3 dan 5.4 adalah pada deklarasi komponen yang digunakan Pada program 5.3, komponen dibuat bersifat lokal (di dalam fungsi main()), sedangkan pada program 5.4, komponen bersifat global (tidak berada di dalam fungsi apapun) sehingga dapat dikenali di semua fungsi
Struktur kode program aplikasi berbasis web (applet) import java.applet.*; import java.awt.*; public class NamaKlas extends Applet { public void paint (Graphics g){ }
Sekilas tentang applet Applet adalah aplikasi Java yang dapat dijalankan pada halaman web Tujuan dibuatnya applet adalah untuk menutupi kekurangan dari web statis Applet membutuhkan sebuah halaman web untuk dapat ditampilkan pada web browser Applet ditampilkan dengan memanfaatkan tag yang disediakan oleh web browser
Tag HTML yang digunakan untuk menampilkan applet Kebanyakan browser yang ada sekarang telah mendukung untuk dapat menampilkan aplikasi yang dibuat dalam bentuk applet Tag yang digunakan untuk menampilkan applet pada halaman web adalah tag <applet> </applet>
Atribut dari tag <applet> Code = “URL” atribut Code diisi dengan lokasi/nama file class java applet Width = “lebar” atribut Width diisi dengan lebar dari applet dalam satuan pixel Height = “tinggi” atribut height diisi dengan tinggi dari applet dalam satuan pixel
Contoh applet (5.5a) import java.applet.Applet; import java.awt.Graphics; public class CobaLagi extends Applet{ public void paint(Graphics g){ g.drawString("Belajar applet",20,20); }
Contoh file HTML untuk menampilkan applet (5.5b) <html> <body> <applet code = "CobaLagi.class" width = "150" height = "50" > </applet> </body> </html>
PERHATIAN !!! Pastikan agar tidak salah dalam menuliskan nama file class pada atribut CODE Simpanlah kedua file (class dan HTML) dalam satu folder agar browser dapat mudah menemukan file class applet tersebut Buka file HTML pada web browser (firefox, chrome, opera, atau yg lain)
Applet dengan penginputan (5.6a) import java.awt.*; import java.applet.*; public class CobaLagi extends Applet{ Label ketr, pesan; TextField nama; Button proses; public void init(){ ketr = new Label("Ketik nama anda: "); pesan = new Label(); nama = new TextField(30); proses = new Button("Proses"); setLayout(new FlowLayout(FlowLayout.LEFT,10,10)); add(ketr); add(nama); add(proses); add(pesan); }
public void paint(Graphics g){ pesan.setSize(350,30); } public boolean action(Event e, Object o){ if(e.target instanceof Button){ if(o == "Proses") pesan.setText("Nama anda " + nama.getText()); return true; else return false;
Contoh file HTML (5.6b) <html> <body> <applet code = "CobaLagi.class" width = "400" height = "100" > </applet> </body> </html>
Tugas 3 Buatlah sebuah aplikasi berbasis window ATAU applet yang dapat menerima input dan menampilkan kembali data berupa: Nama Alamat Tahun kelahiran Upload kode program java-nya paling lambat 2 minggu depan