1 / 32

GUI & Event Handling

GUI & Event Handling. Viska Mutiawani , M.Sc. 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. AWT vs Swing.

elmo
Download Presentation

GUI & Event Handling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GUI & Event Handling ViskaMutiawani, M.Sc

  2. GUI pada Java • GUI (Graphical User Interface) pada Java umumnyamenggunakankelasdari package javax.swingdan java.awt. • AWT dan Swing dapatdipergunakanuntukmembuataplikasiberbasis desktop GUI dan Applet.

  3. AWT vs Swing • Swing memilikilebihbanyakkomponen GUI • Komponenpada AWT memilikilook and feelsesuaidengan environment tempatiadijalankan • Contoh: button ygditampilkanakanberbedamengikut OS • Komponenpada Swing akanselalusama, di OS manapuniadijalankan • Penamaanpada Swing adatambahan prefix J, contoh Button vsJButton

  4. GUI • Secaraumumkomponen GUI terdiridari 3 klasifikasi: • Komponen Control Komponen yang menjadiperantarainteraksiantarapenggunadan program. Ex: Button • Container Komponenruang yang dapatmenampungkomponen control. Ex: Panel, Window, ScrollPane • Layout Manager Gaya untukmenyusunsemuakomponenpada interface. Ex: BorderLayout, FlowLayout

  5. Langkah2MembuatAplikasi GUI • Menentukan Container. • Menentukankomponen control. Kita perluterlebihdahulumenentukankomponenkontrolapa yang ingindigunakan. Contohnyajikainginmenggunakantombol, makakitamemilihJButton. Jikainginmenggunakanmedan input teksdaripengguna, kitabisamemakaiJtextFieldatauJTextAreabergantungukurankataygdiperlukan. • Menentukan layout. Tentukan layout manager sesuai yang kitainginkan. • Menentukan input penggunadanresponapa yang dilakukanterhadapnya. Tentukanapa yang perludiinputolehpenggunadanresponterhadap input tersebut. Hal inimelibatkan event listener.

  6. 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. • JButtonadalahkomponenberbentuktombol. Komponeninibanyakdigunakansebagaieksekusiterhadaptindakan yang diinginkan. Padaaplikasikomputer, biasanyadibutuhkantomboluntukmengeksekusisebuahperintah.

  7. Komponen Control • JRadioButtonadalahkomponen yang digunakanketikapenggunaperlumemilihsatudiantarabeberapapilihan. • JComboBoxjugamerupakankomponen yang digunakanuntukmemilihsatudiantarasekianbanyakpilihan yang berbentuksemacamTextFielddanadapanahkebawah. • JTextAreamerupakankomponen yang miripdenganJtextFieldtetapidapatmenampunglebihdarisatubaris. • JCheckBox adalah komponen yang digunakan ketika penggunamemerlukan komponen untuk melakukan satu atau banyak pilhan sekaligus

  8. 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.

  9. 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.

  10. Layout Manager • Pengaturan layout digunakanuntukmengaturposisidarikomponen visual penyusun program sesuaidengandesain user interface.

  11. Layout Manager • FlowLayoutadalahjenispengaturan layout yang paling sederhana, dimanasemuakomponenakantersusundarikirikekanansepanjang frame, danakanpindahkebawahbilatelahsampaibataskanan frame. Default pada java.awt

  12. Layout Manager • BorderLayoutmerupakanjenis layout yang bekerjadenganmembagi frame menjadi lima bagianyaitu NORTH, EAST, SOUTH, WEST dan CENTER. Komponen visual dapatdiletakkanpadabagian-bagiantersebut.

  13. Layout Manager • GridLayoutadalahjenis layout yang bekerjaberdasarbarisdankolom. Dengan layout inikitadapatmemberikanargumenbanyaknyabarisdankolomsesuaidengankebutuhan.

  14. Layout Manager • NoneLayoutmerupakanjenis layout yang dapatmenghasilkantampilan yang rapikarenakitadapatmengaturposisikomponensecaradetilberdasarkoordinatnya. Konsekuensinyadengan layout iniwaktu yang diperlukanrelatiflebihbanyakdibanding layout yang lain karenakitaperlumenentukanposisikoordinattiapkomponen.

  15. Layout Manager • GridBagLayout: ukuran grid bisaberubah, lebihdarisatukomponenbisamasukpadasatu grid • CardLayout: komponenditimpasepertikartu, hanyasatukomponenygnampakpadasatuwaktu • BoxLayout: Komponendisusunkiri-kananatauatas-bawah

  16. Latihan • Buat interface sepertiberikut:

  17. Latihan • Buat interface sepertiberikut:

  18. Latihan/PR • Buatkelas Layout. • Kelas Layout memiliki 5 komponenJButtondidalamnya. • Kelas Layout dapatmengubah layout darikelimaJbuttonmenjadiFlowLayoutdgnmemanggil method setFlowLayout(), BorderLayoutdgnmemanggil method setBorderLayout() atauGridLayoutdgnmemanggil method setGridLayout().

  19. setFlowLayout() setBorderLayout() setGridLayout()

  20. Event • Java menggunakandelegation event modeluntukmengendalikanperistiwa (event). • Pada model initerdapat: • Event source (sumberperistiwa) • Event listener/event handler (pendengarperistiwa) • Event object

  21. Event Source • Event source mengacupadakomponen GUI ygmenghasilkan event. • Contoh: jika user menekan button, maka event source nyaadalah button

  22. Event Listener/ handler • Event listener: objek yang mendengarperistiwadanmelakukantindakanterhadapperistiwatersebut. • Contoh: ketika button ditekan, listener akanmengendalikandengan handler yang sesuai

  23. Event Object • Ketikasebuah event terjadi, sebuahobjek event diciptakan. • Objekberisisemuainformasiygperlutentang event ygtelahterjadi.

  24. Cara 1: implement listener pada class • Menyediakan program sebagai event listener. • import java.awt.event.*; • public class MyClass implements ActionListener { • Mendaftarkankomponen pd event listener • someComponent.addActionListener(instanceOfMyClass); • Melakukantindakanterhadap event daripengguna • public void actionPerformed)ActionEvent e) { … //kode yang mengakomodasi aksi dari user}

  25. 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) { ... } }); // tutupdengantitikkoma

  26. Latihan Jikaditekan button -- makanilaiakanberkurang 1 Jikaditekan button ++ makanilaiakan bertambah1

More Related