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

dokumen-dokumen yang mirip
GUI & Event Handling. Viska Mutiawani, M.Sc

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

GUI (Grapichal User Interface)

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

Materi : GUI AWT & SWING.

Pemrograman Berorientasi Obyek. Ramos Somya

GRAPHICAL USER INTERFACE (GUI)

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

Percobaan 7 GUI(Graphical User Interface )

Graphical User Interface (GUI)

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

Membuat Menu Login Sederhana [Full Coding]

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

Materi 3 Pemrograman Visual

PEMROGRAMAN BERORIENTASI OBJEK

GUI Event Handling. minggu 13. Wednesday, 16 May 12

Abstract Window Toolkit

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

A. TUJUAN PEMBELAJARAN

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

A. TUJUAN PEMBELAJARAN

BAB IX. USER INTERFACE

Membuat Form Dinamis di Java

Materi 5 Pemrograman Visual

DIK-020 Pemograman Berorientasi Objek 5/24/2012

BAB IX MEMBUAT FORM 9.1 Membuat Form Secara Konvensional

GUI Event Handling 1

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

Membangun GUI (dengan AWT & Swing) OOP Java


Bab Tujuan. 8.2 Delegation Event Model

Modul 08. User Interface 01

GUI Event Handling. 5. Mendiskusikan keuntungan-keuntungan dari menggunakan inner dan anonymous class

Dasar Perancangan Graphical User Interface

1.Tujuan. 2. Latar Belakang

MODUL PRAKTIKUM KE 3 A.

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

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

PEMROGRAMAN BERORIENTASI OBJEK

Sendy Ferdian Sujadi

Modul Praktikum 7 Pemograman Berorientasi Objek

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

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

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

PEMROGRAMAN II. By : Sri Rezeki Candra Nursari

Materi 6 Pemrograman Visual

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

MODUL 7 - EXCEPTION HANDLING

A. TUJUAN PEMBELAJARAN

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

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

Pemrograman Lanjut. Intro to GUI (Graphical User Interface)

Materi 1 Pemrograman Visual

Modul Praktikum 8 BAB VIII LISTENER/EVENT HANDLER. Departemen Teknologi Informasi Telkom Applied Science School 2013.

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

visit :

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

RPS Mata Kuliah Bahasa Pemrograman Program Studi Sistem Informasi Halaman 1 dari 18

Materi 4 Pemrograman Visual

Materi 2 Pemrograman Visual

AWT (ABSTRACT WINDOWS TOOLKITS)

Modul 9: antarmuka grafis (GUI) dalam window

SOAL UAS Mata Kuliah : Pemrograman Berorientasi Objek Lanjutan

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

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

BAB I PENDAHULUAN. Listing 1.1 menunjukkan program GUI Java sederhana menggunakan AWT. import java.awt.*; import java.awt.event.*;

Obyek Lanjutan (Java)

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

Tugas Pemrograman Java P7 EL Event Handler & Menu. Disusun oleh: RIDLO PAMUJI / 22

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

1.Tujuan. 2. Latar Belakang

Modul 7 Praktikum Pemrograman Visual

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

PENGENALAN JAVA GUI PROGRAMMING

PERTEMUAN 6 AWT & SWING

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

IKG2I4 / Software Project I

GARIS-GARIS BESAR PROGRAM PERKULIAHAN (GBPP)

Fajar Yusran Zebua DASAR ANIMASI

Pemrograman Java. Pertemuan VIII By: Augury

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

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

KEAHLIAN PEMROGAMAN JAVA

Membuat Kalkulator dengan Java

KASUS INHERITANCE. (Window, Multithreading dan Applet)

Slide 6: Writing Classes

JList, JComboBox, JTable

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

PBO Lanjut Lecture 02 Komponen Swing Dasar N IKO IB R A H IM, M IT U N IV E R S ITA S K R IS TEN M A R A N A TH A

1. Latar Belakang 2. Tujuan

Sendy Ferdian Sujadi

Pemrograman Berbasis Java PERSEWAAN PELAMPUNG. Riska Nony Oktaviani Kelas 21 Teknik Informatika Teknologi Informasi

Program Kalkulator Sederhana Menggunakan Java Netbeans

Modul Praktikum 8 Pemograman Berorientasi Objek

PAKET (PACKAGE) 20 Januari 2012

BAB 4 ANALISIS DAN SIMULASI

Tutorial A Menggambar Bendera Merah Putih Pada Frame

Event Listener. Beberapa EventListener yang akan diberikan contoh pada slide ini antara lain:

KELAS INNER, KELAS ABSTRAK, DAN INTERFACE. 16 th week Estu Sinduningrum ST,MT

BAB II. Manggunakan JComboBox

Transkripsi:

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

GUI pada Java GUI (Graphical User Interface) pada Java umumnya menggunakan kelas dari package javax.swing dan java.awt. AWT dan Swing dapat dipergunakan untuk membuat aplikasi berbasis desktop GUI dan Applet. 2 Viska Mutiawani - Informatika FMIPA

AWT vs Swing Swing memiliki lebih banyak komponen GUI Komponen pada AWT memiliki look and feel sesuai dengan environment tempat ia dijalankan Contoh: button yg ditampilkan akan berbeda mengikut OS Komponen pada Swing akan selalu sama, di OS manapun ia dijalankan Penamaan pada Swing ada tambahan prefix J, contoh Button vs JButton 3 Viska Mutiawani - Informatika FMIPA

GUI Secara umum komponen GUI terdiri dari 3 klasifikasi: Komponen Control Komponen yang menjadi perantara interaksi antara pengguna dan program. Ex: Button Container Komponen ruang yang dapat menampung komponen control. Ex: Panel, Window, ScrollPane Layout Manager Gaya untuk menyusun semua komponen pada interface. Ex: BorderLayout, FlowLayout 4 Viska Mutiawani - Informatika FMIPA

Langkah 2 Membuat Aplikasi GUI Menentukan Container. Menentukan komponen control. Kita perlu terlebih dahulu menentukan komponen kontrol apa yang ingin digunakan. Contohnya jika ingin menggunakan tombol, maka kita memilih JButton. Jika ingin menggunakan medan input teks dari pengguna, kita bisa memakai JtextField atau JTextArea bergantung ukuran kata yg diperlukan. Menentukan layout. Tentukan layout manager sesuai yang kita inginkan. Menentukan input pengguna dan respon apa yang dilakukan terhadapnya. Tentukan apa yang perlu diinput oleh pengguna dan respon terhadap input tersebut. Hal ini melibatkan event listener. 5 Viska Mutiawani - Informatika FMIPA

6 Viska Mutiawani - Informatika FMIPA

7 Viska Mutiawani - Informatika FMIPA

Komponen Control JLabel adalah komponen yang digunakan untuk membuat tulisan atau gambar pada frame sebagai suatu informasi untuk pengguna program. Untuk menggunakan jlabel, sebagai suatu class maka sebelumnya perlu dibuat suatu obyek menggunakan class JLabel. JTextField adalah komponen yang digunakan untuk memasukkan sebaris string yang selanjutnya dapat digunakan sebagai input bagi proses selanjutnya. Pembuatan JTextfield dilakukan dengan membuat obyek berdasarkan class JtextField. JButton adalah komponen berbentuk tombol. Komponen ini banyak digunakan sebagai eksekusi terhadap tindakan yang diinginkan. Pada aplikasi komputer, biasanya dibutuhkan tombol untuk mengeksekusi sebuah perintah. 8 Viska Mutiawani - Informatika FMIPA

Komponen Control JRadioButton adalah komponen yang digunakan ketika pengguna perlu memilih satu diantara beberapa pilihan. JComboBox juga merupakan komponen yang digunakan untukmemilih satu diantara sekian banyak pilihan yang berbentuk semacam TextField dan ada panah ke bawah. JTextArea merupakan komponen yang mirip dengan JtextField tetapi dapat menampung lebih dari satu baris. JCheckBox adalah komponen yang digunakan ketika penggunamemerlukan komponen untuk melakukan satu atau banyak pilhan sekaligus 9 Viska Mutiawani - Informatika FMIPA

Komponen Control JList digunakan untuk menampilkan satu seri item. JTable digunakan untuk menampilkan data dalam bentuk tabel, suatu bentuk yang banyak digunakan dalam pemrograman database. JMenu adalah komponen yang digunakan untuk membuat menu. Menu membuat program kita menjadi lebih sederhana dan mudah digunakan. JColorChooser JProgressBar JSlider 10 Viska Mutiawani - Informatika FMIPA

Container JFrame adalah komponen dasar dalam pemrograman visual dengan java. Dalam inilah komponen lain diletakkan. JScrollPane adalah komponen yang digunakan untuk menggerakkan obyek ke atas, ke bawah atau ke samping agar semua sebuah obyek terlihat di layar. JInternalFrame menyebabkan sebuah frame hanya dapat berada dalam frame lain. Kondisi ini akan membantu tampilan menjadi lebih rapi dan teratur. JPanel digunakan untuk menyusun komponen agar lebih rapi. 11 Viska Mutiawani - Informatika FMIPA

Layout Manager Pengaturan layout digunakan untuk mengatur posisi dari komponen visual penyusun program sesuai dengan desain user interface. 12 Viska Mutiawani - Informatika FMIPA

13 Viska Mutiawani - Informatika FMIPA

Layout Manager FlowLayout adalah jenis pengaturan layout yang paling sederhana, dimana semua komponen akan tersusun dari kiri ke kanan sepanjang frame, dan akan pindah ke bawah bila telah sampai batas kanan frame. Default pada java.awt 14 Viska Mutiawani - Informatika FMIPA

Layout Manager BorderLayout merupakan jenis layout yang bekerja dengan membagi frame menjadi lima bagian yaitu NORTH, EAST, SOUTH, WEST dan CENTER. Komponen visual dapat diletakkan pada bagian-bagian tersebut. 15 Viska Mutiawani - Informatika FMIPA

Layout Manager GridLayout adalah jenis layout yang bekerja berdasar baris dan kolom. Dengan layout ini kita dapat memberikan argumen banyaknya baris dan kolom sesuai dengan kebutuhan. 16 Viska Mutiawani - Informatika FMIPA

Layout Manager NoneLayout merupakan jenis layout yang dapat menghasilkan tampilan yang rapi karena kita dapat mengatur posisi komponen secara detil berdasar koordinatnya. Konsekuensinya dengan layout ini waktu yang diperlukan relatif lebih banyak dibanding layout yang lain karena kita perlu menentukan posisi koordinat tiap komponen. 17 Viska Mutiawani - Informatika FMIPA

Layout Manager GridBagLayout: ukuran grid bisa berubah, lebih dari satu komponen bisa masuk pada satu grid CardLayout: komponen ditimpa seperti kartu, hanya satu komponen yg nampak pada satu waktu BoxLayout: Komponen disusun kiri-kanan atau atasbawah 18 Viska Mutiawani - Informatika FMIPA

Aplikasi AWT/Swing sederhana Aplikasi AWT/Swing sederhana memerlukan Frame. Ada 2 cara untuk mencipta Frame: Extend class Frame (inheritance) Mencipta objek class Frame (association) Pada Swing, caranya juga sama, hanya bedanya Swing menggunakan JFrame. Semua komponen juga berawalan dengan J. Dan jangan lupa import javax.swing.* 19 Viska Mutiawani - Informatika FMIPA

Contoh cara pertama import java.awt.*; class First extends Frame{ First(){ Button b=new Button("click me"); b.setbounds(30,100,80,30);// setting button position add(b);//adding button into frame setsize(300,300);//frame size 300 width and 300 height setlayout(null);//no layout manager setvisible(true);//now frame will be visible, by default not visible } public static void main(string args[]){ First f=new First(); }} 20 Viska Mutiawani - Informatika FMIPA

Contoh cara kedua import java.awt.*; class First2{ First2(){ Frame f=new Frame(); Button b=new Button("click me"); b.setbounds(30,50,80,30); f.add(b); f.setsize(300,300); f.setlayout(null); f.setvisible(true); } public static void main(string args[]){ First2 f=new First2(); }} 21 Viska Mutiawani - Informatika FMIPA

Latihan Buat interface seperti berikut: 22 Viska Mutiawani - Informatika FMIPA

Latihan Buat interface seperti berikut: 23 Viska Mutiawani - Informatika FMIPA

Event Java menggunakan delegation event model untuk mengendalikan peristiwa (event). Pada model ini terdapat: Event source (sumber peristiwa) Event listener/event handler (pendengar peristiwa) Event object 24 Viska Mutiawani - Informatika FMIPA

Event Source Event source mengacu pada komponen GUI yg menghasilkan event. Contoh: jika user menekan button, maka event source nya adalah button 25 Viska Mutiawani - Informatika FMIPA

Event Listener/ handler Event listener: objek yang mendengar peristiwa dan melakukan tindakan terhadap peristiwa tersebut. Contoh: ketika button ditekan, listener akan mengendalikan dengan handler yang sesuai 26 Viska Mutiawani - Informatika FMIPA

Event Object Ketika sebuah event terjadi, sebuah objek event diciptakan. Objek berisi semua informasi yg perlu tentang event yg telah terjadi. 27 Viska Mutiawani - Informatika FMIPA

28 Viska Mutiawani - Informatika FMIPA

Cara 1: implement listener pada class Menyediakan program sebagai event listener. import java.awt.event.*; public class MyClass implements ActionListener { Mendaftarkan komponen pd event listener somecomponent.addactionlistener(instanceofmyclass); Melakukan tindakan terhadap event dari pengguna public void actionperformed)actionevent e) { //kode yang mengakomodasi aksi dari user } 29 Viska Mutiawani - Informatika FMIPA

Cara 2 : Menggunakan Inner Class Implementasi program dengan inner class, sbb : addmousemotionlistener(new MyMouseMotionListener()); class MyMouseMotionListener extends MouseAdapter { public void mousedragged(mouseevent e) { } } Implementasi program dengan anonymous inner class, sbb : addmousemotionlistener(new MouseMotionAdapter(){ public void mousedragged(mouseevent e) {... } }); // tutup dengan titik koma 30 Viska Mutiawani - Informatika FMIPA

Kategori Name Interface Method Action Item Mouse ActionListener ItemListener MouseListener actionperformed(actionevent) itemstatechanged(itemevent) mousepressed(mouseevent) mousereleased(mouseevenr) mouseentered(mouseevent) mouseexited(mouseevent) mouseclicked(mouseevent) 31 Viska Mutiawani - Informatika FMIPA

32 Viska Mutiawani - Informatika FMIPA

33 Viska Mutiawani - Informatika FMIPA

Method registration method untuk masingmasing komponen Button public void addactionlistener(actionlistener a){} MenuItem public void addactionlistener(actionlistener a){} TextField public void addactionlistener(actionlistener a){} public void addtextlistener(textlistener a){} TextArea public void addtextlistener(textlistener a){} Checkbox public void additemlistener(itemlistener a){} Choice List public void additemlistener(itemlistener a){} public void addactionlistener(actionlistener a){} public void additemlistener(itemlistener a){} 34 Viska Mutiawani - Informatika FMIPA

Latihan Jika ditekan button -- maka nilai akan berkurang 1 Jika ditekan button ++ maka nilai akan bertambah1 35 Viska Mutiawani - Informatika FMIPA