Event Handling Comp Sci 4 Event Handling 15

  • Slides: 15
Download presentation
Event Handling Comp. Sci 4 Event Handling 15. 1

Event Handling Comp. Sci 4 Event Handling 15. 1

The Plan v v v Sequential (Single Thread) Model Event Model Making the GUI

The Plan v v v Sequential (Single Thread) Model Event Model Making the GUI interactive Examples Practice Comp. Sci 4 Event Handling 15. 2

Sequential (Single Thread) Model Program Start Comp. Sci 4 Program End Event Handling 15.

Sequential (Single Thread) Model Program Start Comp. Sci 4 Program End Event Handling 15. 3

Event Model Program Thread AWT Event Loop Comp. Sci 4 Event Handling 15. 4

Event Model Program Thread AWT Event Loop Comp. Sci 4 Event Handling 15. 4

Event Model Program Thread Comp. Sci 4 Event Handling 15. 5

Event Model Program Thread Comp. Sci 4 Event Handling 15. 5

Event Model AWT Event Loop Comp. Sci 4 Event Handling 15. 6

Event Model AWT Event Loop Comp. Sci 4 Event Handling 15. 6

Making the GUI Interactive import java. awt. event. * 2) implements Action. Listener 1)

Making the GUI Interactive import java. awt. event. * 2) implements Action. Listener 1) write method public void action. Performed(Action. Event e) 4) call add. Action. Listener(this) for all JButtons 3) Comp. Sci 4 Event Handling 15. 7

Examples Game. Shell. java Adder. GUI. java Comp. Sci 4 Event Handling 15. 8

Examples Game. Shell. java Adder. GUI. java Comp. Sci 4 Event Handling 15. 8

Examples Adder. GUI. java import java. awt. *; import java. awt. event. *; import

Examples Adder. GUI. java import java. awt. *; import java. awt. event. *; import javax. swing. *; public class Adder. GUI extends JApplet implements Action. Listener Comp. Sci 4 Event Handling 15. 9

Adder. GUI. java Examples public void action. Performed(Action. Event ae) { String addend 0

Adder. GUI. java Examples public void action. Performed(Action. Event ae) { String addend 0 Text=addend 0. get. Text(); double addend 0 Number=Double. parse. Double(addend 0 Text); String addend 1 Text=addend 1. get. Text(); double addend 1 Number=Double. parse. Double(addend 1 Text); double answer=addend 0 Number+addend 1 Number; sum. set. Text(""+answer); } Comp. Sci 4 Event Handling 15. 10

Adder. GUI. java Examples private void make. Components() { frame=new JFrame("Game Shell"); addend 0=new

Adder. GUI. java Examples private void make. Components() { frame=new JFrame("Game Shell"); addend 0=new JText. Field(8); addend 1=new JText. Field(8); sum=new JText. Field(8); compute=new JButton("="); compute. add. Action. Listener(this); plus=new JLabel("+"); plus. set. Horizontal. Alignment(Swing. Constants. CENTER); } Comp. Sci 4 Event Handling 15. 11

Game. Shell. java Examples import java. awt. *; import java. awt. event. *; import

Game. Shell. java Examples import java. awt. *; import java. awt. event. *; import javax. swing. *; public class Game. Shell extends JApplet implements Action. Listener Comp. Sci 4 Event Handling 15. 12

Examples public void action. Performed(Action. Event ae) { Object cause=ae. get. Source(); if(cause==pause) {

Examples public void action. Performed(Action. Event ae) { Object cause=ae. get. Source(); if(cause==pause) { if(pause. get. Text(). equals("Pause")) Game. Shell. java { pause. set. Text("Resume"); shell. set. Text("Paused"); } else { pause. set. Text("Pause"); shell. set. Text("Game Running"); } } if(cause==reset) { pause. set. Text("Start"); shell. set. Text("Splash"); } } Comp. Sci 4 Event Handling 15. 13

Game. Shell. java Examples pause=new JButton("Start"); pause. add. Action. Listener(this); reset=new JButton("Start New Game");

Game. Shell. java Examples pause=new JButton("Start"); pause. add. Action. Listener(this); reset=new JButton("Start New Game"); reset. add. Action. Listener(this); Comp. Sci 4 Event Handling 15. 14

Practice v v v Make a 2 x 2 tic-tac-toe board out of initially

Practice v v v Make a 2 x 2 tic-tac-toe board out of initially blank Jbuttons. Make the JButton text change to X when the user clicks on it. Make the JButton text change to X and O alternatively as the user clicks on the buttons. Hint: use a boolean instance variable. Make the fonts larger, and maybe add images. Look at Splash. java and Splash. Loop. java in Splash. jar Comp. Sci 4 Event Handling 15. 15