L19cs211sp07-6up - GUI Dynamics Lecture 19 CS211 Spring...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: GUI Dynamics Lecture 19 CS211 Spring 2007 2 GUI Statics and GUI Dynamics y Statics: whats drawn on the screen Components buttons, labels, lists, sliders, menus, ... Containers: components that contain other components frames, panels, dialog boxes, ... Layout managers: control placement and sizing of components y Dynamics: user interactions Events button-press, mouse-click, key- press, ... Listeners: an object that responds to an event Helper classes Graphics , Color , Font , FontMetrics , Dimension , ... 3 Dynamics Overview y Dynamics = causing and responding to actions What actions? Called events Need to write code that understands what to do when an event occurs In Java, you specify what happens by providing an object that hears the event In other languages, you specify what happens in response to an event by providing a function y What objects do we need? Events Event listeners 4 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Intro extends JFrame { private int count = 0; private JButton myButton = new JButton( "Push Me!" ); private JLabel label = new JLabel( "Count: " + count ); public Intro() { setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE ); setLayout( new FlowLayout(FlowLayout. LEFT )); //set layout manager add( myButton ); //add components add( label ); label .setPreferredSize( new Dimension(60, 10)); myButton .addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { count ++; label .setText( "Count: " + count ); } }); pack(); setVisible( true ); } public static void main(String args) { try { UIManager. setLookAndFeel (UIManager. getSystemLookAndFeelClassName ()); } catch (Exception exc) {} new Intro(); } } Brief Example Revisited 5 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Intro extends JFrame { private int count = 0; private JButton myButton = new JButton( "Push Me!" ); private JLabel label = new JLabel("Count: " + count); public Intro() { setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE ); setLayout(new FlowLayout(FlowLayout. LEFT )); //set layout manager add(myButton); //add components add(label); label.setPreferredSize(new Dimension(60, 10)); myButton .addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { count ++; label .setText( "Count: " + count ); } }); pack(); setVisible(true); } public static void main(String args) { try { UIManager. setLookAndFeel (UIManager. getSystemLookAndFeelClassName ()); } catch (Exception exc) {} new Intro(); } } Brief Example Revisited...
View Full Document

Page1 / 4

L19cs211sp07-6up - GUI Dynamics Lecture 19 CS211 Spring...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online