Layout Managers and Event Handling Pertemuan 2 TIB13 – Pemrograman Java 2 - 2
Materi Layout Managers GUI Event Types and Listener Interface Mouse Event Handling Key Event Handling
Tujuan Instruksional Khusus Mahasiswa dapat menggunakan beberapa layout manager untuk menata penempatan objek dan penanganan event handling masing-masing objek user interface tersebut.
Layout Managers Pengaturan tata letak komponen dalam kontainer dikenal dengan Layout Management Setiap kontainer mempunyai sebuah layout manager yang mengimplementasikan interface LayoutManager. Kelas-kelas yang digunakan dalam menentukan layout adalah : FlowLayout GridLayout BorderLayout CardLayout GridBagLayout BoxLayout
FlowLayout Layout ini menyusun komponen dalam baris-baris dari kiri ke kanan kemudian dari atas ke bawah menggunakan ukuran alami setiap komponen preferedSize FlowLayout menempatkan komponen UI sebanyak mungkin dalam satu baris, lalu pindah kebaris di bawahnya. Contoh FlowLayout
GridLayout GridLayout menyusun komponen dalam bentuk baris dan kolom. Setiap sel mempunyai ukuran yang sama. Ketika ukuran kontainer kontainer diubah, maka GridLayout akan mengubah ukuran sel dan memenuhi area pada kontainer. Contoh GridLayout
BorderLayout BorderLayout menyusun komponen dalam kontainer dengan area yang bernama North, South, East, West dan Center. Biasanya layout ini digunakan bersamaan dengan penggunaan kontainer panel, untuk memudahkan pengaturan komponen User Interface. Contoh BorderLayout
CardLayout CardLayout menyusun komponen misalnya panel seperti tumpukan kartu.
GridBagLayout GridBagLayout memiliki kemampuan menempatkan komponen-komponen secara horizontal dan vertikal pada kotak-kotak yang dinamis. Masing-masing komponen tidak harus sama ukurannya seperti pada GridLayout. Contoh CardLayout
BoxLayout BoxLayout mengizinkan banyak komponen untuk diletakkan secara vertikal maupun horizontal. Contoh BoxLayout (Y Axix) Contoh BoxLayout (X Axix)
GUI Event Types and Listener Interface Event adalah kejadian yang di-trigger oleh user terhadap komponen User Interface, seperti ketika Anda menekan tombol, menentukan pilihan dari ComboBox dsb. Event akan ditangkap event listener melalui masing-masing ID dari objek yang telah diberi listener melalui method addActionListener. EVENT (Tindakan User) Method (Event Handler) Aksi (Menutup Aplikasi) Menutup Aplikasi
Program – Event Handling – Cara 1
Program – Event Handling – Cara 2
Registrasi Event pada objek JTextField textField1.
Contoh event, source object dan tipe event User Action Source Object Event Type Klik tombol JButton ActionEvent Memilih menu JMenu Menggerakkan scrollbar JScrollBar AdjusmentEvent Memilih item (lebih dari satu) JList ListSelectionEvent Gained focus atau lost focus pada komponen Container FocusEvent Memilih Item JComboBox ItemEvent, ActionEvent Class event di atas terdapat pada package java.awt.event dan javax.swing.event
Contoh Event, Event Listener, Listener method Event Class Listener Interface Listener Method ActionEvent ActionListener actionPerformed(ActionEvent) ItemEvent ItemListener itemStateChanged(ItemEvent) WindowEvent WindowListener windowClosing(WindowEvent) windowOpened(WindowEvent) windowActivated(WindowEvent) FocusEvent FocusListener focusGained(FocusEvent) focusLost((FocusLost) ContainerEvent ContainerListener componentAdded(ContainerEvent) componentRemove(ContainerEvent)
Some event classes of package java.awt.event.
Mouse Event Handling Contoh method-method MouseListener dan MouseMotionListener yang diterapkan pada class. Nama method Penerapan mouseClicked Dipanggil pada saat tombol mouse di click (seperti tekan dan lepas). mouseEntered Dipanggil pada saat kursor mouse memasuki area komponen. mouseExited Dipanggil pada saat kursor mouse meninggalkan area komponen. mousePressed Dipanggil pada saat tombol mouse ditekan di atas komponen mouseReleased Dipanggil pada saat tombol mouse dilepas di atas komponen mouseDragged Digunakan untuk memantau pergerakan mouse yang melintasi objek pada saat tombol mouse ditekan. Tindakan ini persis sama dengan tindakan pada saat memindahkan sebuah window. mouseMoved Digunakan untuk memantau pergerakan mouse pada saat mouse melintasi area suatu objek. Pada saat ini tidak ada mouse yang ditekan, hanya memindahkan pointer mouse melalui objek.
Program – Mouse Event Handling
Key Event Handling Java menyediakan Interface KeyListener untuk mendengarkan aksi dari keyboard dan mengirimkan action tersebut melalui method yang diikutsertakan dalam program. Adapun method-methodnya adalah keyPressed, keyReleased, dan keyTyped . Ketiga parameter dari method ini hanya mempunyai satu parameter yaitu KeyEvent.
Program – Key Event Handling