• Tidak ada hasil yang ditemukan

BAB 7_SWING

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 7_SWING"

Copied!
12
0
0

Teks penuh

(1)

LAPORAN PRAKTIKUM

LAPORAN PRAKTIKUM

PEMROGRAMAN BERBASIS OBJEK

PEMROGRAMAN BERBASIS OBJEK

““

SWING

SWING

””

Disusun Oleh :

Disusun Oleh :

Ardi Kurniawan

Ardi Kurniawan

3.34.10.0.06

3.34.10.0.06

IK-2A

IK-2A

PROGRAM STUDI TEKNIK INFORMATIKA PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN ELEKTRO JURUSAN ELEKTRO

POLITEKNIK NEGERI SEMARANG

POLITEKNIK NEGERI SEMARANG

TAHUN 2011 TAHUN 2011

(2)

BAB 7 BAB 7

SWING

SWING

I. Tujuan Instruksional Khusus I. Tujuan Instruksional Khusus

Setelah menyelesaikan praktek ini mahasiswa dapat : Setelah menyelesaikan praktek ini mahasiswa dapat : 1.

1. menjelaskan apa menjelaskan apa yang yang dimaksud dimaksud Swing,Swing, 2.

2. perbedaan antara komponen dan container,perbedaan antara komponen dan container, 3.

3. mendesain aplikasi GUI menggunakan Swing,mendesain aplikasi GUI menggunakan Swing, 4.

4. membuat tampilan yang komplek dalam mendesain aplikasi GUI.membuat tampilan yang komplek dalam mendesain aplikasi GUI.

II. Persyaratan / Kebutuhan Sistem Komputer II. Persyaratan / Kebutuhan Sistem Komputer

Persyaratan / kebutuhan sistem untuk menjalankan program Java adalah sebagai berikut : Persyaratan / kebutuhan sistem untuk menjalankan program Java adalah sebagai berikut : 1.

1. processor processor P-II atau P-II atau yang lebih yang lebih tinggi,tinggi, 2.

2. ram minimal 32 Mbyte,ram minimal 32 Mbyte, 3.

3. free space harddisk minimal 200 Mbyte,free space harddisk minimal 200 Mbyte, 4.

4. mouse ( Serial / PS2 ),mouse ( Serial / PS2 ), 5.

5. sistem operasi :sistem operasi : a.

a. minimal Windows 98 ( disarankan versi Windows yang lebih tinggi),minimal Windows 98 ( disarankan versi Windows yang lebih tinggi), b.

b. Linux.Linux.

III. Dasar Teori III. Dasar Teori Komponen

Komponen SwingSwing

Seperti pada package AWT, package dari Swing menyediakan banyak class untuk membuat Seperti pada package AWT, package dari Swing menyediakan banyak class untuk membuat aplikasi GUI. Package tersebut dapat ditemukan di

aplikasi GUI. Package tersebut dapat ditemukan di  javax.swing javax.swing. Perbedaan utama antara. Perbedaan utama antara keduanya adalah komponen Swing ditulis menyeluruh menggunakan Java. Program GUI ditulis keduanya adalah komponen Swing ditulis menyeluruh menggunakan Java. Program GUI ditulis menggunakan banyak class dari package Swing yang mempunyai tampilan look and feel yang menggunakan banyak class dari package Swing yang mempunyai tampilan look and feel yang sama meski dijalankan pada paltform yang berbeda. Lebih dari itu, Swing menyediakan sama meski dijalankan pada paltform yang berbeda. Lebih dari itu, Swing menyediakan komponen yang lebih menarik seperti

komponen yang lebih menarik seperti color chooser color chooser dandan option pane.option pane. Nama dari komponen GUINama dari komponen GUI milik Swing hampir sama persis dengan komponen GUI milik AWT. Perbedaan jelas terdapat milik Swing hampir sama persis dengan komponen GUI milik AWT. Perbedaan jelas terdapat pada penamaan komponen. Pada dasarnya, nama komponen Swing sama dengan nama pada penamaan komponen. Pada dasarnya, nama komponen Swing sama dengan nama

(3)

komponen AWT tetapi dengan tambahan huruf J pada prefixnya. Sebagai contoh, satu komponen komponen AWT tetapi dengan tambahan huruf J pada prefixnya. Sebagai contoh, satu komponen dalam AWT adalah button class. Sedangkan pada Swing, nama komponen tersebut menjadi dalam AWT adalah button class. Sedangkan pada Swing, nama komponen tersebut menjadi Jbutton class. Berikut adalah daftar dari komponen Swing.

Jbutton class. Berikut adalah daftar dari komponen Swing. Tabel 6.1 Daftar komponen Swing

Tabel 6.1 Daftar komponen Swing

Komponen Komponen Swing Swing Penjelasan Penjelasan JComponent

JComponent class class induk induk untuk untuk semua semua komponen komponen Swing, Swing, tidak tidak termasuk termasuk top-leveltop-level kontainer

kontainer JButton

JButton Tombol “push”. Berhubungan dengan class button dalam package AWTTombol “push”. Berhubungan dengan class button dalam package AWT JCheckBox

JCheckBox Item Item yang yang dapat dapat dipilih dipilih atau atau tidak tidak oleh oleh pengguna. pengguna. Berhubungan Berhubungan dengandengan class checkbox dalam package AWT

class checkbox dalam package AWT JFileChooser

JFileChooser Mengijinkan pengguna Mengijinkan pengguna untuk untuk memilih memilih sebuah sebuah file. file. Berhubungan Berhubungan dengandengan class filechooser dalam package AWT

class filechooser dalam package AWT JTextField

JTextField Mengijinkan Mengijinkan untuk untuk mengedit mengedit text text satu satu baris. baris. Berhubungan Berhubungan dengan dengan classclass textfield dalam package AWT.

textfield dalam package AWT. JFrame

JFrame Turunan Turunan dan dan Berhubungan Berhubungan dengan dengan class class frame frame dalam dalam package package AWT AWT tetapitetapi keduanya sedikit tidak cocok dalam kaitannya dengan menambahkan keduanya sedikit tidak cocok dalam kaitannya dengan menambahkan komponen pada kontainer. Perlu mendapatkan content pane yang terbaru komponen pada kontainer. Perlu mendapatkan content pane yang terbaru sebelum menambah sebuah komponen.

sebelum menambah sebuah komponen. JPanel

JPanel Turunan Turunan Jcomponent. Jcomponent. Class Class Container Container sederhana sederhana tetapi tetapi bukan bukan top-level.top-level. Berhubungan dengan class panel dalam package AWT.

Berhubungan dengan class panel dalam package AWT. JApplet

JApplet Turunan Turunan dan dan Berhubungan Berhubungan dengan dengan class class Applet Applet dalam dalam package package AWT.AWT. Juga sedikit tidak cocok dengan class applet dalam kaitannya dengan Juga sedikit tidak cocok dengan class applet dalam kaitannya dengan menambahkan komponen pada container

menambahkan komponen pada container JOptionPane

JOptionPane Turunan Turunan Jcomponent. Jcomponent. Disediakan Disediakan untuk untuk mempermudah mempermudah menampilkanmenampilkan pop-up kotak dialog.

pop-up kotak dialog. JDialog

JDialog Turunan Turunan dan dan Berhubungan Berhubungan dengan dengan class class dialog dialog dalam dalam package package AWT.AWT. Biasanya digunakan untuk menginformasikan sesuatu kepada pengguna Biasanya digunakan untuk menginformasikan sesuatu kepada pengguna atau prompt pengguna untuk input.

atau prompt pengguna untuk input. JColorChooser

JColorChooser Turunan Turunan Jcomponent. Memungkinkan Jcomponent. Memungkinkan pengguna pengguna untuk muntuk memilih warnaemilih warna yang diinginkan.

yang diinginkan.

Setting Up Top-Level Containers Setting Up Top-Level Containers

Seperti disebutkan diatas, top-level containers seperti

Seperti disebutkan diatas, top-level containers seperti  Jframe Jframe dandan Japplet  Japplet dalam Swing sangatdalam Swing sangat tidak cocok dengan AWT. Ini adalah syarat menambahkan komponen ke dalam kontainer. Jika tidak cocok dengan AWT. Ini adalah syarat menambahkan komponen ke dalam kontainer. Jika Anda ingin menambahkan langsung sebuah komponen kedalam kontainer sebagai container Anda ingin menambahkan langsung sebuah komponen kedalam kontainer sebagai container

(4)

AWT, pertama-tama Anda telah mendapatkan content pane dari kontainer. Untuk melakukan hal AWT, pertama-tama Anda telah mendapatkan content pane dari kontainer. Untuk melakukan hal tersebut, Anda akan menggunakan method

tersebut, Anda akan menggunakan method getContentPanegetContentPanedari container.dari container.

IV. Langkah Kerja IV. Langkah Kerja

Jalankan Edit Plus, buat file baru java dan ketikkan kode program berikut : Jalankan Edit Plus, buat file baru java dan ketikkan kode program berikut : 1.

1. Lakukan percobaan berikut sesuai teori diatas, lalu simpan dengan Filename Win1.Lakukan percobaan berikut sesuai teori diatas, lalu simpan dengan Filename Win1.

import javax.swing.*; import javax.swing.*;

public class Win1 extends javax.swing.JFrame public class Win1 extends javax.swing.JFrame { { public Win1() public Win1() { { setTitle("Layar 1"); setTitle("Layar 1"); setSize(200,300); setSize(200,300); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); setVisible(true); } }

public static void main(String[] args) public static void main(String[] args) {

{

Win1 w = new Win1(); Win1 w = new Win1(); }

} } }

(5)

2.

2. Lakukan percobaan berikut sesuai teori diatas, lalu simpan dengan Filename Win2.Lakukan percobaan berikut sesuai teori diatas, lalu simpan dengan Filename Win2. import javax.swing.*;

import javax.swing.*; public class Win2 public class Win2 { { JFrame w; JFrame w; public Win2() public Win2() { { w = new JFrame (); w = new JFrame (); w.setTitle("layar 2"); w.setTitle("layar 2"); w.setSize(200,300); w.setSize(200,300); w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); w.setVisible(true); w.setVisible(true); } }

public static void main(String args[]) public static void main(String args[]) { { new Win2(); new Win2(); } } } }

(6)

3.

3. Perhatikan Kode program diatas dan ubah kodeprogram dengan menuliskan title mlangsungPerhatikan Kode program diatas dan ubah kodeprogram dengan menuliskan title mlangsung pada konstruktor. Simpan dengan Filename Win2b.

pada konstruktor. Simpan dengan Filename Win2b.

4.

4. Ubah program JFrame dengan menambahkan Container dengan kode getContentPane()Ubah program JFrame dengan menambahkan Container dengan kode getContentPane() seperti kode dibawah

seperti kode dibawah ini ini lalu simpan dengan lalu simpan dengan Filename Win3.Filename Win3.

import java.awt.*; import java.awt.*; import javax.swing.*; import javax.swing.*;

public class Win3 extends javax.swing.JFrame public class Win3 extends javax.swing.JFrame { { public Win3() public Win3() { {

JButton tombol = new JButton("Tombol"); JButton tombol = new JButton("Tombol");  //Contain  //Container c;er c; getContentPane().add(tombol); getContentPane().add(tombol); setSize(300,80); setSize(300,80); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); setVisible(true); } }

public static void main(String[] args) public static void main(String[] args) { { new Win3(); new Win3(); } } } }

(7)

5.

5. Ubah program Ubah program JFrame Win3 dengan JFrame Win3 dengan menambahkan Label menambahkan Label seperti kode dibawah seperti kode dibawah ini ini lalulalu simpan dengan Filename MyLabel.

simpan dengan Filename MyLabel.

import javax.swing.*; import javax.swing.*; import java.awt.*; import java.awt.*;

public class mylabel public class mylabel { { JFrame layar; JFrame layar; JLabel L1, L2, L3, L4; JLabel L1, L2, L3, L4; public mylabel() public mylabel() { {

layar = new JFrame("Label Test"); layar = new JFrame("Label Test"); L2

L2 = = new new JLabel JLabel ("Alamat ("Alamat :");:"); L1

L1 = = new new JLabel JLabel ("Nama ("Nama :");:");

Container c = layar.getContentPane(); Container c = layar.getContentPane(); c.setLayout(new FlowLayout()); c.setLayout(new FlowLayout()); L3

L3 = = new new JLabel JLabel ("Kota ("Kota :",SwingConstants.LEFT);:",SwingConstants.LEFT); L4

L4 = = new new JLabel JLabel ("Telepon ("Telepon :",SwingConstants:",SwingConstants.RIGHT);.RIGHT);

c.add(L1); c.add(L1); c.add(L2); c.add(L2); c.add(L3); c.add(L3); c.add(L4); c.add(L4); layar.setSize(400,200); layar.setSize(400,200); layar.setVisible(true); layar.setVisible(true); } }

(8)

public static void main (String argv[]) public static void main (String argv[]) { { new mylabel(); new mylabel(); } } } } 6.

6. Ubah program Ubah program MyLabel dengan menambahkan Label MyLabel dengan menambahkan Label seperti kode dibawah seperti kode dibawah ini ini lalu simpanlalu simpan dengan Filename/class name (MyTextField).

dengan Filename/class name (MyTextField).

import javax.swing.*; import javax.swing.*; import java.awt.*; import java.awt.*;

public class MyTextField { public class MyTextField {

private JFrame layar; private JFrame layar; private JTextField tf1; private JTextField tf1; private JLabel L1,L2; private JLabel L1,L2; private JPasswordField psw; private JPasswordField psw; public MyTextField() public MyTextField() { {

layar = new JFrame("Text Field Test"); layar = new JFrame("Text Field Test"); L1 = new JLabel("User Name : "); L1 = new JLabel("User Name : "); L2 = new JLabel("Password : "); L2 = new JLabel("Password : "); tf1= new JTextField(25);

tf1= new JTextField(25);

JPasswordField psw = new JPasswordField(20); JPasswordField psw = new JPasswordField(20);

(9)

Container c = layar.getContentPane(); Container c = layar.getContentPane(); c.setLayout( new FlowLayout()); c.setLayout( new FlowLayout());

c.add(L1); c.add(L1); c.add(tf1); c.add(tf1); c.add(L2); c.add(L2); c.add(psw); c.add(psw); layar.setSize(400,100); layar.setSize(400,100); layar.setVisible(true); layar.setVisible(true); } }

public static void main(String [] args) { public static void main(String [] args) {

new MyTextField(); new MyTextField(); } } } } 7.

7. Ubah Ubah program MyTextField program MyTextField dengan menambahkan dengan menambahkan Label Label seperti kode seperti kode dibawah ini dibawah ini lalulalu simpan dengan Filename/class name (MyButton).

simpan dengan Filename/class name (MyButton).  //MyBut  //MyButton.javaton.java import javax.swing.*; import javax.swing.*; import java.awt.*; import java.awt.*; public class MyButton public class MyButton {

{

private JFrame layar; private JFrame layar; private JLabel L1, L2; private JLabel L1, L2;

(10)

private JTextField tf1; private JTextField tf1; private JPasswordField psw; private JPasswordField psw; JButton b1, b2; JButton b1, b2; public MyButton() public MyButton() { {

layar = new JFrame("TextField Test"); layar = new JFrame("TextField Test"); L1 = new JLabel("User Name: "); L1 = new JLabel("User Name: "); tf1 = new JTextField(25); tf1 = new JTextField(25); L2 = new JLabel("Password: "); L2 = new JLabel("Password: "); psw = new JPasswordField(25); psw = new JPasswordField(25); b1 = new JButton("OK"); b1 = new JButton("OK"); b2 = new JButton("Cancel"); b2 = new JButton("Cancel"); Container c = layar.getContentPane(); Container c = layar.getContentPane(); c.setLayout(new FlowLayout()); c.setLayout(new FlowLayout()); c.add(L1); c.add(L1); c.add(tf1); c.add(tf1); c.add(L2); c.add(L2); c.add(psw); c.add(psw); c.add(b1); c.add(b1); c.add(b2); c.add(b2); layar.setSize(900,80); layar.setSize(900,80); layar.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); layar.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); layar.setVisible(true); layar.setVisible(true); } }

public static void main(String[] args) public static void main(String[] args) {

{

MyButton mb = new MyButton(); MyButton mb = new MyButton(); }

} } }

(11)

1.

1. Simpan program Java di atas.Simpan program Java di atas. 2.

2. Eksekusi program Java Pertama dengan mengklik ToolEksekusi program Java Pertama dengan mengklik Tool  Compile Program Java. Lalu ToolCompile Program Java. Lalu Tool 

 Menjalankan Program Java.Menjalankan Program Java. 3.

3. Tampilkan hasilnya.Tampilkan hasilnya.

V. Pertanyaan V. Pertanyaan

Buatlah tampilan GUI untuk program tic-tac-toe. Papannya terdiri dari enam kotak. Ingatlah Buatlah tampilan GUI untuk program tic-tac-toe. Papannya terdiri dari enam kotak. Ingatlah bahwa Anda akan menambahkan kode ini pada tahap akhir untuk mengatasi interaksi antar bahwa Anda akan menambahkan kode ini pada tahap akhir untuk mengatasi interaksi antar pengguna. Jadi, desainlah papan Anda dengan benar. Pastikanlah Anda memilih komponen yang pengguna. Jadi, desainlah papan Anda dengan benar. Pastikanlah Anda memilih komponen yang pantas untuk papan tersebut. keluarkan semua sisi artistik Anda. Anda dapat menggunakan pantas untuk papan tersebut. keluarkan semua sisi artistik Anda. Anda dapat menggunakan Swing untuk latihan ini.

Swing untuk latihan ini.

Source code : Source code :  //Tictactoe.java  //Tictactoe.java import javax.swing.*; import javax.swing.*; import java.awt.*; import java.awt.*; public class Tictactoe public class Tictactoe { { JFrame layar; JFrame layar; JButton b1, b2, b3, b4, b5, b6, b7, b8, b9; JButton b1, b2, b3, b4, b5, b6, b7, b8, b9; public Tictactoe() public Tictactoe() { {

layar = new JFrame("Tictactoe"); layar = new JFrame("Tictactoe");

ImageIcon ico = new ImageIcon("ico.gif"); ImageIcon ico = new ImageIcon("ico.gif"); b1= new JButton(ico); b1= new JButton(ico); b2= new JButton(ico); b2= new JButton(ico); b3= new JButton(ico); b3= new JButton(ico); b4= new JButton(ico); b4= new JButton(ico); b5= new JButton(ico); b5= new JButton(ico); b6= new JButton(ico); b6= new JButton(ico); b7= new JButton(ico); b7= new JButton(ico); b8= new JButton(ico); b8= new JButton(ico);

(12)

b9= new JButton(ico); b9= new JButton(ico); Container c=

Container c= layar.getContentPane();layar.getContentPane(); c.setLayout(new GridLayout(3,3)); c.setLayout(new GridLayout(3,3)); c.add(b1); c.add(b1); c.add(b2); c.add(b2); c.add(b3); c.add(b3); c.add(b4); c.add(b4); c.add(b5); c.add(b5); c.add(b6); c.add(b6); c.add(b7); c.add(b7); c.add(b8); c.add(b8); c.add(b9); c.add(b9); layar.setSize(300,250); layar.setSize(300,250); layar.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); layar.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); layar.setVisible(true); layar.setVisible(true); layar.setLocation(500,200); layar.setLocation(500,200); } }

public static void main(String[] args) public static void main(String[] args) {

{

Tictactoe tt= new Tictactoe(); Tictactoe tt= new Tictactoe(); } } } } Print Priview : Print Priview :

Referensi

Dokumen terkait

Data yang telah diinput Pakar akan di proses pada program dengan menggunakan metode forward chaining, berdasarkan gejala yang dimasukan, kemudian gejala-gejala

Zona merupakan suatu kawasan atau area yang memiliki fungsi dan karakteristik lingkungan yang spesifik. Subzona merupakan bagian dari zona yang memiliki fungsi

Kami mengharapkan anda untuk mengikuti tindakan pencegahan yang diidentifikasi dalam dokumen ini kecuali kondisi penggunaan akan memerlukan metode atau tindakan lain yang

(5) Penyaluran benih oleh Balai Benih kepada konsumen supaya dilakukan dengan pembayaran secara spontan, bila pembayaran secara kredit/bon mendapat rekomendasi dari

Kompetensi Dasar Materi Pokok Kegiatan Pembelajaran Indikator Penilaian Alokasi Waktu Sumber Belajar Teknik Bentuk.. Instrumen Contoh Instrumen

Dengan adanya Undang-Undang Nomor 23 tahun 2004 tentang penghapusan kekerasan dalam Rumah tangga ini menjadi payung hukum bagi korban dan membuat efek jera bagi pelaku tindak

Kelompok Usaha mereklasifikasi keuntungan atau kerugian yang sebelumnya diakui dalam pendapatan komprehensif lain dari ekuitas ke laporan laba rugi (sebagai

To fulfill the minimum Capital Adequacy Ratio (CAR) stipulated by Bank Indonesia as a consequence of the legal transfer of all assets and liabilities from the ) 4 BUR to the