Presentation is loading. Please wait.

Presentation is loading. Please wait.

CompSci 415.1 Event Handling. CompSci 415.2 Event Handling The Plan  Sequential (Single Thread) Model  Event Model  Making the GUI interactive  Examples.

Similar presentations


Presentation on theme: "CompSci 415.1 Event Handling. CompSci 415.2 Event Handling The Plan  Sequential (Single Thread) Model  Event Model  Making the GUI interactive  Examples."— Presentation transcript:

1 CompSci 415.1 Event Handling

2 CompSci 415.2 Event Handling The Plan  Sequential (Single Thread) Model  Event Model  Making the GUI interactive  Examples  Practice

3 CompSci 415.3 Event Handling Sequential (Single Thread) Model Program Start Program End

4 CompSci 415.4 Event Handling Event Model AWT Event Loop Program Thread

5 CompSci 415.5 Event Handling Event Model Program Thread

6 CompSci 415.6 Event Handling Event Model AWT Event Loop

7 CompSci 415.7 Event Handling Making the GUI Interactive 1) import java.awt.event.* 2) implements ActionListener 3) write method public void actionPerformed(ActionEvent e) 4) call addActionListener(this) for all JButton s

8 CompSci 415.8 Event Handling Examples AdderGUI.java GameShell.java

9 CompSci 415.9 Event Handling Examples AdderGUI.java import java.awt.*; import java.awt.event.*; import javax.swing.*; public class AdderGUI extends JApplet implements ActionListener

10 CompSci 415.10 Event Handling Examples AdderGUI.java public void actionPerformed(ActionEvent ae) { String addend0Text=addend0.getText(); double addend0Number=Double.parseDouble(addend0Text); String addend1Text=addend1.getText(); double addend1Number=Double.parseDouble(addend1Text); double answer=addend0Number+addend1Number; sum.setText(""+answer); }

11 CompSci 415.11 Event Handling Examples AdderGUI.java private void makeComponents() { frame=new JFrame("Game Shell"); addend0=new JTextField(8); addend1=new JTextField(8); sum=new JTextField(8); compute=new JButton("="); compute.addActionListener(this); plus=new JLabel("+"); plus.setHorizontalAlignment(SwingConstants.CENTER); }

12 CompSci 415.12 Event Handling Examples GameShell.java import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GameShell extends JApplet implements ActionListener

13 CompSci 415.13 Event Handling Examples GameShell.java public void actionPerformed(ActionEvent ae) { Object cause=ae.getSource(); if(cause==pause) { if(pause.getText().equals("Pause")) { pause.setText("Resume"); shell.setText("Paused"); } else { pause.setText("Pause"); shell.setText("Game Running"); } if(cause==reset) { pause.setText("Start"); shell.setText("Splash"); }

14 CompSci 415.14 Event Handling Examples GameShell.java pause=new JButton("Start"); pause.addActionListener(this); reset=new JButton("Start New Game"); reset.addActionListener(this);

15 CompSci 415.15 Event Handling Practice  Make a 2x2 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 SplashLoop.java in Splash.jar


Download ppt "CompSci 415.1 Event Handling. CompSci 415.2 Event Handling The Plan  Sequential (Single Thread) Model  Event Model  Making the GUI interactive  Examples."

Similar presentations


Ads by Google