12 Event

22
Pengendali Pengendali Peristiwa Peristiwa Marini Abu Bakar Marini Abu Bakar Jabatan Sains Komputer Jabatan Sains Komputer

description

 

Transcript of 12 Event

Page 1: 12   Event

Pengendali Pengendali PeristiwaPeristiwa

Marini Abu BakarMarini Abu BakarJabatan Sains KomputerJabatan Sains Komputer

Page 2: 12   Event

PengenalanPengenalan Peristiwa (Peristiwa (event) event) adalah suatu isyarat adalah suatu isyarat

yang dihantar kepada aturcara bagi yang dihantar kepada aturcara bagi memberitahu sesuatu telah berlaku. memberitahu sesuatu telah berlaku.

Beberapa keadaan yang menjana Beberapa keadaan yang menjana peristiwa:peristiwa: Komponen butang diklikKomponen butang diklik Tombol penggelungsur diubah kedudukanTombol penggelungsur diubah kedudukan Tetikus digerakkanTetikus digerakkan Papan kekunci ditekanPapan kekunci ditekan

Page 3: 12   Event

Sebarang sistem pengoperasian yang Sebarang sistem pengoperasian yang menyokong antara muka bergrafik menyokong antara muka bergrafik perlu melakukan pemantauan untuk perlu melakukan pemantauan untuk mengesan sebarang peristiwa yang mengesan sebarang peristiwa yang berlaku. berlaku.

Apabila suatu peristiwa dikesan, ia akan Apabila suatu peristiwa dikesan, ia akan melaporkan peristiwa itu kepada atur melaporkan peristiwa itu kepada atur cara yang sedang dilaksanakan. Atur cara yang sedang dilaksanakan. Atur cara pula akan memberi tindakbalas cara pula akan memberi tindakbalas terhadap peristiwa tersebut. terhadap peristiwa tersebut.

Page 4: 12   Event

Dalam Java, suatu peristiwa Dalam Java, suatu peristiwa disekutukan dengan sumber dan disekutukan dengan sumber dan pendengar-pendengarnya pendengar-pendengarnya sumber peristiwasumber peristiwa ( (event sourceevent source) )

merujuk kepada objek yang mencetuskan merujuk kepada objek yang mencetuskan peristiwa itu peristiwa itu

pendengar peristiwapendengar peristiwa ( (event listenerevent listener) ) merujuk kepada objek yang perlu diberi merujuk kepada objek yang perlu diberi pemberitahuan (pemberitahuan (notificationnotification) oleh sumber ) oleh sumber peristiwa mengenai peristiwa tersebut peristiwa mengenai peristiwa tersebut

Page 5: 12   Event

Suatu objek yang berminat menerima Suatu objek yang berminat menerima pemberitahuan mengenai suatu pemberitahuan mengenai suatu peristiwa perlu mengimplementasikan peristiwa perlu mengimplementasikan antara muka pendengar (listener antara muka pendengar (listener interface) yang berkenaan. interface) yang berkenaan.

Objek tersebut kemudiannya perlu Objek tersebut kemudiannya perlu mendaftarkan dirinya dengan sumber mendaftarkan dirinya dengan sumber peristiwa sebagai satu daripada peristiwa sebagai satu daripada pendengar bagi peristiwa itu pendengar bagi peristiwa itu

Page 6: 12   Event

Apabila suatu peristiwa berlaku, Apabila suatu peristiwa berlaku, sumber peristiwa akan menghantar sumber peristiwa akan menghantar pemberitahuan kepada setiap pemberitahuan kepada setiap pendengar bagi peristiwa itu pendengar bagi peristiwa itu bersama-sama suatu objek peristiwa bersama-sama suatu objek peristiwa yang mengandungi maklumat yang mengandungi maklumat mengenai peristiwa tersebut mengenai peristiwa tersebut

Page 7: 12   Event

Apabila pendengar menerima Apabila pendengar menerima pemberitahuan serta objek peristiwa pemberitahuan serta objek peristiwa daripada sumber peristiwa, ia akan daripada sumber peristiwa, ia akan bertindakbalas menggunakan bertindakbalas menggunakan maklumat yang terdapat dalam maklumat yang terdapat dalam objek peristiwa tersebut objek peristiwa tersebut

Page 8: 12   Event

Kelas java.awt.eventKelas java.awt.event

Page 9: 12   Event

Selected User ActionsSelected User ActionsSource Event Type

User Action Object Generated

Clicked on a button JButton ActionEvent

Changed text JTextComponent TextEvent

Double-clicked on a list item JList ActionEvent

Selected or deselected an item JList ItemEvent with a single click

Selected or deselected an item JComboBox ItemEvent

Page 10: 12   Event

The Delegation ModelThe Delegation Model

Page 11: 12   Event

Selected Event Selected Event HandlersHandlers

Event Class Listener Interface Listener Methods (Handlers)ActionEvent ActionListener actionPerformed(ActionEvent)ItemEvent ItemListener itemStateChanged(ItemEvent)WindowEvent WindowListener windowClosing(WindowEvent)

windowOpened(WindowEvent)windowIconified(WindowEvent)windowDeiconified(WindowEvent)windowClosed(WindowEvent)windowActivated(WindowEvent)windowDeactivated(WindowEvent)

ContainerEvent ContainerListener componentAdded(ContainerEvent)componentRemoved(ContainerEvent)

Page 12: 12   Event

Komponen Butang diklikKomponen Butang diklik

AppletviewerAppletviewer

Page 13: 12   Event

::

import java.awt.event.*;import java.awt.event.*;

::

public class ApletPembilang extends JApplet implements public class ApletPembilang extends JApplet implements ActionListener {ActionListener {

public void init() {public void init() {

::

butang = new JButton(“++”);butang = new JButton(“++”);

butang.addActionListener(this);butang.addActionListener(this);

::

}}

public void actionPerformed(ActionEvent e) {public void actionPerformed(ActionEvent e) {

::

}}

}} ApletPembilang.javaApletPembilang.java

Page 14: 12   Event

Kekunci Enter ditekanKekunci Enter ditekan

AppletviewerAppletviewer

ApletJumlah.javaApletJumlah.java

Page 15: 12   Event

Kekunci Enter ditekanKekunci Enter ditekan

AppletviewerAppletviewer

ApletIndeksBeratBadan.javaApletIndeksBeratBadan.java

Page 16: 12   Event

Menformat Output Nombor Menformat Output Nombor NyataNyata

::

import java.text*;import java.text*;

::

public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {

::

indeks = ...;indeks = ...;

DecimalFormat format2 = new DecimalFormat format2 = new DecimalFormat("0.00");DecimalFormat("0.00");

s = format2.format(indeks);s = format2.format(indeks);

output.setText("Indeks Berat Badan Anda ialah " + s);output.setText("Indeks Berat Badan Anda ialah " + s);

}}

}} AppletviewerAppletviewer

Page 17: 12   Event

ItemEventItemEvent

AppletviewerAppletviewerApletKomputer.javaApletKomputer.java

Page 18: 12   Event

ChangeEventChangeEvent

AppletviewerAppletviewerSpektrumWarna.javaSpektrumWarna.java

Page 19: 12   Event

RunRunTextFieldDemoTextFieldDemo

Latihan: ActionEventLatihan: ActionEvent

Page 20: 12   Event

RunRunRadioButtonDemoRadioButtonDemo

Latihan: ItemEventLatihan: ItemEvent

Page 21: 12   Event

MortgageAppletMortgageApplet Run Applet ViewerRun Applet Viewer

Latihan: ActionEventLatihan: ActionEvent

Page 22: 12   Event

monthlyPayment = monthlyPayment =

loanAmount * monthlyInterestRate / loanAmount * monthlyInterestRate / (1 - (Math.pow(1 / (1 + (1 - (Math.pow(1 / (1 + monthlyInterestRate), numOfYears * monthlyInterestRate), numOfYears * 12))); 12)));

totalPayment =totalPayment =

monthlyPayment * numOfYears * 12; monthlyPayment * numOfYears * 12;