IF PEMROGRAMAN LANJUT GRAPHICAL USER INTERFACE (GUI) 11 DENGAN SWING. Oleh : Andri Heryandi, M.T.

dokumen-dokumen yang mirip
PEMROGRAMAN II. Materi : nursari2010.blogdetik.com String String Handling Java.util,Java.io. By : Sri Rezeki Candra Nursari

GUI (Grapichal User Interface)

GUI & Event Handling. Viska Mutiawani, M.Sc. 1 Viska Mutiawani - Informatika FMIPA Unsyiah

Abstract Window Toolkit

Materi 3 Pemrograman Visual

Materi : GUI AWT & SWING.

A. TUJUAN PEMBELAJARAN

GUI & Event Handling. Viska Mutiawani, M.Sc

GUI in Java. Presented by HCI Team Ali Ridho Barakbah Umi Sa adah Nur Rosyid Mubtada i. Supervised by Prof. Kohei Arai

Swing. suatu program. Tetapi, program Anda akan kelihatan tidak menarik dan tidak nyaman digunakan bagi para

Creating Graphical User Interfaces [1] with Java By: De Rosal Ignatius Moses Setiadi

IF PEMROGRAMAN LANJUT EVENT. Oleh : Andri Heryandi, M.T.

Pemrograman Lanjut. Intro to GUI (Graphical User Interface)

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN II. By : Sri Rezeki Candra Nursari

Modul Praktikum 9 BAB IX LAYOUTING. Departemen Teknologi Informasi Telkom Applied Science School H a l

Tutorial A Menggambar Bendera Merah Putih Pada Frame

Modul 08. User Interface 01

Membangun GUI (dengan AWT & Swing) OOP Java

Modul Praktikum 7 Pemograman Berorientasi Objek

A. TUJUAN PEMBELAJARAN

PERTEMUAN 6 AWT & SWING

Membuat Menu Login Sederhana [Full Coding]

MODUL PRAKTIKUM KE 3 A.

Dasar Perancangan Graphical User Interface

Pemrograman Berorientasi Obyek. Ramos Somya

Membuat Frame, Label, TextField dan Button di Java [Full Coding]

Graphical User Interface (GUI)

2. Manakah diantara pilihan berikut ini yang merupakan bagian dari event delegation model? Sebuah komponen yang menampilkan message

Membuat Form Dinamis di Java

Pemrograman Java. Pertemuan VIII By: Augury

Materi 4 Pemrograman Visual

PERTEMUAN VI AWT DAN SWING TUJUAN PRAKTIKUM. 1. Praktikan mengenal pembuatan GUI pada Java. 2. Praktikan memahami action pada objek dalam Java.

Membuat User Interface dengan Swing. Program yang dibuat sebelumnya selalu berbasis console User lebih senang berinteraksi dengan

Materi 1 Pemrograman Visual

IKG2I4 / Software Project I

BAGIAN XIII GRAPHICAL USER INTERFACE DENGAN SWING. Praktikum I : Menggunakan JFrame, JTextField, JLabel dan JButton

A. TUJUAN PEMBELAJARAN

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java

BAB IX MEMBUAT FORM 9.1 Membuat Form Secara Konvensional

Membuat Kalkulator dengan Java

INSTRUKSI PENCABANGAN

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

BINA NUSANTARA UNIVERSITY NATA LASE

PEMROGRAMAN BERORIENTASI OBJEK

- Setiap pola yang menggambarkan permasalahan yang terjadi secara berulang, serta

Sendy Ferdian Sujadi

Arranging Components on a User Interface. Pertemuan 14 Pemrograman Berorientasi Obyek Oleh Tita Karlita

BAB 7 Abstract Windowing Toolkit dan Swing

PEMROGRAMAN BERORIENTASI OBJEK

BAB IX. USER INTERFACE

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Program Kalkulator Sederhana Menggunakan Java Netbeans

Materi 5 Pemrograman Visual

5/24/2012. Pemograman Berorientasi Objek. Pembahasan. Abstract Windowing Toolkit & Swing. Pembahasan

OBJECT ORIENTED PROGRAMMING (OOP)

AWT (ABSTRACT WINDOWS TOOLKITS)

Modul Praktikum 8 Pemograman Berorientasi Objek

Pemrograman III (Java) Pertemuan X By: Augury

1. Mana dari adapter berikut ini yang merupakan class adapter yang benar didalam Java. ComponentAdapter

Object Oriented Pemrograman yang mendukung konsep objek. (inheritance, capsulation, polymorphism)

Materi 6 Pemrograman Visual

Modul 7 Praktikum Pemrograman Visual

JAVA SWING. Swing merupakan library pada java untuk membuat sebuah tampilan seperti

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

Modul 2. [access specifier] [tipe data] [nama variabel];

P 5 Bab 4 : GUI (Graphical User Interface) 4.1 Tujuan. 4.2 Materi. 4.3 Review OOP. : Suzuki, Ferari, Toyota, Honda, Jaguar

Pemrograman Berorientasi Objek Lanjut Lecture 3: Layout Manager

BAB I PROJECT NETBEANS DAN GUI SEDERHANA

1.Tujuan. 2. Latar Belakang

Pemrograman Java III

GRAPHICAL USER INTERFACE (GUI)

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

BAB 2 INPUT DARI KEYBOARD

Pemrograman Java III

LAPORAN PERCOBAAN V ( MENGHITUNG NILAI UJIAN MAHASISWA) BERBASIS JAVA DENGAN MENGGUNAKAN TOOLS NETBEANS

LAPORAN TUGAS AKHIR APLIKASI KALKULATOR BERBASIS JAVA

Praktikum III : Menggunakan JRadioButton

MODUL 7 - EXCEPTION HANDLING

PERTEMUAN 1 Membuat Project & Komponen Swing [PBO II JAVA] dosen : SOPINGI, S.Kom

Pemrograman Java III

Slide 6: Writing Classes

Menghubungkan Database Access Menggunakan Netbeans Oleh : Yuliana Setiowati

Refreshing Praktikum: GUI (Graphical User Interface)

Percobaan 7 GUI(Graphical User Interface )

BAB 5 Mendapatkan Input dari Keyboard


IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP)

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

BAB I PENDAHULUAN. Maksud dan tujuan dari pembuatan Aplikasi Penentu Nilai Mahasiswa pada pemrograman java adalah:

MODUL 3. Classes and Objects (part I)

MK. Pemrograman Berorientasi Objek. Input dari Keyboard. Karmilasari

BERBASIS JAVA DENGAN MENGGUNAKAN TOOLS NETBEANS

visit :

SOAL UAS Mata Kuliah : Pemrograman Berorientasi Objek Lanjutan

PENGENALAN JAVA GUI PROGRAMMING

IMPLEMENTASI MODEL VIEW CONTROLLER (MVC) DESIGN PATTERN

Transkripsi:

IF34348 - PEMROGRAMAN LANJUT GRAPHICAL USER INTERFACE (GUI) 11 DENGAN SWING Oleh : Andri Heryandi, M.T.

MATERI HARI INI Swing Definisi swing Komponen Swing Layout Manager Oleh : Andri Heryandi, M.T. 2

SWING Swing adalah API (Application Programming Interface) untuk membuat GUI (Graphical User Interface) untuk aplikasi yang dibuat dengan Java. Package yang bisa digunakan : javax.swing.* Oleh : Andri Heryandi, M.T. 3

SWING Beberapa komponen Swing 1. JComponent : class induk untuk semua komponen Swing 2. JFrame : Class yang dapat membuat frame. 3. JPanel : Class yang dapat digunakan untuk menampung komponen lain. 4. JLabel : Class yang digunakan untuk menampilkan label. 5. JButton : class untuk membuat sebuah tombol 6. JCheckBox : Class untuk membuat pilihan ya/tidak 7. JTextField : Class untuk mengisi data text Oleh : Andri Heryandi, M.T. 4

MEMBUAT APLIKASI GUI Langkah-langkah membuat aplikasi GUI dengan Swing : Membuat objek dengan class JFrame. Isi judul frame sebagai parameternya Atur setvisible dengan nilai true. import javax.swing.*; public class GUI1 { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setvisible(true); Hasil Run adalah sebuah window kecil : Oleh : Andri Heryandi, M.T. 5

MENGUBAH UKURAN WINDOW Method setsize memiliki parameter lebar (width) dan tinggi (height). Lebar dan tinggi dalam satuan pixel. import javax.swing.*; public class GUI1 { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setsize(200, 100); f.setvisible(true); Oleh : Andri Heryandi, M.T. 6

MENUTUP APLIKASI Jika anda mengklik tombol Close windows pada aplikasi berbasis Swing, maka windows akan tertutup tetapi aplikasinya belum benar-benar tertutup. Untuk benar-benar menutup maka anda harus mengatur setdefaultcloseoperation dengan konstanta JFrame.EXIT_ON_CLOSE. import javax.swing.*; public class GUI1 { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); f.setsize(200, 100); f.setvisible(true); Oleh : Andri Heryandi, M.T. 7

MENAMBAH KOMPONEN Langkah untuk menambah sebuah komponen ke sebuah Frame adalah : Buat objeknya (sesuai dengan komponen yang diinginkan). Tambahkan ke Frame dengan memanggil method add() milik Frame. import javax.swing.*; public class GUI1 { public static void main(string[] args) { JButton tombol=new JButton("Tombol"); f.add(tombol); Oleh : Andri Heryandi, M.T. 8

PENGATURAN LAYOUT Layout komponen dalam sebuah Container (misalnya Frame, atau Panel) dapat diatur dengan menggunakan method setlayout(). Parameternya adalah objek Layout yang diantaranya adalah : null : Untuk layout absolute, dimana posisi dan ukuran ditentukan secara manual oleh programmer. FlowLayout BorderLayout GridLayout Lihat : http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html Oleh : Andri Heryandi, M.T. 9

PENGATURAN LAYOUT (NULL) Absolut (null) adalah pengaturan layout secara absolute (programmer menentukan lokasi dan ukurannya secara manual). Untuk menentukan lokasi dan ukuran suatu komponen, gunakan method setbounds milik setiap komponen. Parameter setbounds adalah x : lokasi koordinat x (bagian kiri dari komponen) y : lokasi koordinat y (bagian atas dari komponen) width : lebar komponen height : tinggi komponen Semua satuannya adalah pixel. Contoh : setbounds(40,50,100,20) : Koordinat kiri atas adalah 40,50 dengan lebar 100 dan tinggi 20. Oleh : Andri Heryandi, M.T. 10

PENGATURAN LAYOUT (NULL) import javax.swing.*; public class LayoutAbsolute { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); f.setsize(300, 150); f.setlayout(null); JLabel lbl1=new JLabel("Bilangan : "); lbl1.setbounds(10,10,100,20); JTextField txt1=new JTextField(); txt1.setbounds(120,10,100,20); JButton tombol=new JButton("Tombol"); tombol.setbounds(120,40,80,20); f.add(lbl1); f.add(txt1); f.add(tombol); f.setvisible(true); Oleh : Andri Heryandi, M.T. 11

PENGATURAN LAYOUT (FLOWLAYOUT) Peletakan komponen dengan layout Flowlayout dimulai dari kiri ke kanan. Package yang digunakan : java.awt.flowlayout Konstruktornya : FlowLayout() : posisi di tengah dan celah (gap) horizontal dan vertikal sebesar 5 (default). FlowLayout(int align) : Mengatur alignment-nya (LEFT, RIGHT, CENTER). FlowLayout(int align, int hgap, int vgap) : Mengatur alignment, gap horizontal dan gap vertikal. Oleh : Andri Heryandi, M.T. 12

PENGATURAN LAYOUT (FLOWLAYOUT) import java.awt.flowlayout; import javax.swing.*; public class LayoutFlowLayout { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); f.setsize(300, 170); f.setlayout(new FlowLayout()); for(int i=1;i<=10;i++){ if(i%5==1)// tombol 1 dan 6 dibuat lebih panjang else f.add(new JButton("Tombol Panjang "+i)); f.add(new JButton("Tombol "+i)); f.setvisible(true); Silahkan constructor FlowLayout diubah-ubah. Oleh : Andri Heryandi, M.T. 13

PENGATURAN LAYOUT (BORDERLAYOUT) Peletakan komponen dengan layout BorderLayout dilakukan dengan membagi container menjadi 5 bagian yaitu NORTH, EAST, SOUTH, WEST, CENTER) Package yang digunakan : java.awt.borderlayout Tidak semua bagian harus anda gunakan. Konstruktornya : BorderLayout() : Tanpa gap. BorderLayout(int hgap, int vgap) : Mengatur gap horizontal dan vertikal. Oleh : Andri Heryandi, M.T. 14

PENGATURAN LAYOUT (BORDERLAYOUT) import java.awt.borderlayout; import javax.swing.*; public class LayoutBorderLayout { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); f.setsize(300, 200); f.setlayout(new BorderLayout()); JButton tombolsouth=new JButton("SELATAN"); f.add(new JButton("UTARA"),BorderLayout.NORTH); f.add(new JButton("BARAT"),BorderLayout.WEST ); f.add(new JButton("TIMUR"),BorderLayout.EAST ); f.add(new JTextArea("TENGAH"),BorderLayout.CENTER ); f.add(tombolsouth,borderlayout.south ); f.setvisible(true); Coba hilangkan beberapa tombol, lihat layout hasilnya. Oleh : Andri Heryandi, M.T. 15

PENGATURAN LAYOUT (GRIDLAYOUT) Peletakan komponen dengan layout GridLayout dilakukan dengan mengatur layout berdasarkan banyaknya kolom dan baris. Package yang digunakan : java.awt.gridlayout Tidak semua bagian harus anda gunakan. Konstruktornya : GridLayout() : semua komponen dibuat perkolom dalam 1 baris. GridLayout(int rows, int cols) : Mengatur banyaknya baris dan kolom. GridLayout(int rows, int cols, int hgap, int vgap) : Mengatur banyaknya baris dan kolom serta celah vertikal dan horizontal. Oleh : Andri Heryandi, M.T. 16

PENGATURAN LAYOUT (GRIDLAYOUT) import java.awt.gridlayout; import javax.swing.*; public class LayoutGridLayout { public static void main(string[] args) { JFrame f=new JFrame("Demo Swing"); f.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); f.setsize(300, 200); f.setlayout(new GridLayout(5,2,5,10)); for(int i=1;i<=10;i++) f.add(new JButton(Integer.toString(i))); f.setvisible(true); Oleh : Andri Heryandi, M.T. 17

PENGATURAN LAYOUT LANJUT Misalkan anda ingin membuat aplikasi dengan layout seperti pada gambar di bawah ini : A : BorderLayout B : NORTH BorderLayout C : WEST Borderlayout, Layout komponen Grid 1 kolom. D: CENTER BorderLayout Layout komponen BorderLayout E : CENTER BorderLayout F : SOUTH BorderLayout Layout komponen di dalam menggunakan FlowLayout Oleh : Andri Heryandi, M.T. 18 B A D E C F

PENGATURAN LAYOUT LANJUT JFrame dibagi-bagi menjadi beberapa bagian yang setiap bagiannya dapat menampung komponen lain. Anda bisa gunakan JPanel. Atur dulu Jpanelnya agar sesuai dengan tampilan yang diinginkan. Jika Panel sudah sesuai, tambahkan komponen-komponen ke Jpanel yang sesuai. Oleh : Andri Heryandi, M.T. 19

PENGATURAN LAYOUT LANJUT import java.awt.*; import javax.swing.*; public class Gui2 { public static void main(string[] args) { JFrame f=new JFrame("Gui Complex"); f.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); f.setsize(800,600); JPanel paneljudul=new JPanel(); JPanel panelmenu=new JPanel(); JPanel panelisi=new JPanel(); f.setlayout(new BorderLayout()); f.add(paneljudul,borderlayout.north ); f.add(panelmenu,borderlayout.west ); f.add(panelisi,borderlayout.center); Oleh : Andri Heryandi, M.T. 20

PENGATURAN LAYOUT LANJUT JLabel judul=new JLabel("Aplikasi Tester GUI Swing"); paneljudul.add(judul); paneljudul.setlayout (new FlowLayout()); JButton tombolnew=new JButton("New"); JButton tombolopen=new JButton("Open"); JButton tombolsave=new JButton("Save..."); JButton tombolclose=new JButton("Close"); panelmenu.setlayout(new GridLayout(10,1)); panelmenu.add(tombolnew); panelmenu.add(tombolopen); panelmenu.add(tombolsave); panelmenu.add(tombolclose); Oleh : Andri Heryandi, M.T. 21

PENGATURAN LAYOUT LANJUT JTextArea editor=new JTextArea(); JPanel panelfile=new JPanel(); panelisi.setlayout(new BorderLayout()); panelisi.add(editor,borderlayout.center ); panelisi.add(panelfile,borderlayout.south ); JLabel lketfile=new JLabel("Nama File : "); JLabel lnamafile=new JLabel("<Nama File>"); panelfile.setlayout(new FlowLayout(FlowLayout.LEFT)); panelfile.add(lketfile); panelfile.add(lnamafile); f.setvisible(true); Oleh : Andri Heryandi, M.T. 22