Point getlocation( ) setlocation( int x, int y ) setlocation( Point p ) Pointx, y Point blocation = b.getlocation( ); System.out.println( "x axis: " +



Similar documents
Point getlocation( ) setlocation( int x, int y ) setlocation( Point p ) Point x, y Point blocation = b.getlocation( ); System.out.println( "x axis: "

Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i +=

text_13.dvi

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1

text_12.dvi


< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>

< F2D89BA8EE882C E6A7464>

< F2D A839382CC906A2E6A7464>

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped

< F2D82518CC282CC D2E6A7464>

AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import import java.awt.* ; // AWT Graphics import java.awt.graphics; // AWT Gra

< F2D E E6A7464>

AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import import java.awt.* ; // AWT Graphics import java.awt.graphics; // AWT Gra

< F2D F B834E2E6A7464>

< F2D834F838C A815B A CC>

< F2D B838A835882CC8CF68EAE2E6A7464>

< F2D A838B838D96402E6A7464>

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec

5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2;

Chapter 19. init paint actionperformed init if Subroutine Function init paint ( ) { } ( ) void public void init( ) { } init void void public Copyright

Microsoft PowerPoint - prog12.ppt

< F2D B825082CC96E291E82E6A7464>

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem

< F2D825282CC947B909482CC A815B83682E6A>

Microsoft PowerPoint - prog11.ppt

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible

Applet java.lang.object java.awt.component java.awt.container java.awt.panel java.applet.applet

< F2D92DE82E8914B82CC977088D32E6A7464>

6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent thread, 1 GUI 6.0.2, mutlithread C

Microsoft Word - Java4.DOC

Microsoft PowerPoint - prog11.ppt

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav

< F2D82B682E182F182AF82F12E6A7464>

< F2D8EA CE909482CC92EA82852E6A7464>

B 10 : N ip2003f10.tex B : 9/12/ :02 p.1/71

Java 2 - Lesson01

try catch Exception Java try catch try { } catch ( Exception e ) { } e 16-1 try catch 0 try { int x = 0; int y = 10 / x; } catch ( Exception e ) { Sys

Java言語 第1回

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464>

Microsoft PowerPoint prog1_doc2x.pptx

Chapter JDK KeyListener keypressed(keyevent e ) keyreleased(keyevent e ) keytyped(keyevent e ) MouseListener mouseclicked(mouseeven

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含

Java言語 第1回

public class MyFrame { private JPanel panel1; private JPanel panel2; private JPanel panel3; private JPanel panel4; private JLabel label1; private JTex

I. (i) Java? (A). 2Apples (B). Vitamin-C (C). Peach21 (D). Pine_Apple (ii) Java? (A). Java (B). Java (C). Java (D). JavaScript Java JavaScript Java (i

untitled

アプレットの作成

Color.cyan, Color.yellow, Color.pink, Color.orange, Color.white, Color.black, Color.gray, Color.darkGray, Color.lightGray ; Button barray [ ] = new Bu

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

Microsoft PowerPoint prog1_doc2.pptx

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame("Kadai _02"); (2) フレームのクラス名は MyFrame とし 以下

Microsoft PowerPoint ppt

Microsoft PowerPoint - OOP.pptx

Java言語 第1回

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public

I HTML HashMap (i) (ii) :.java import java.net.*; import java.io.*; import java.util.hashmap; public class SimpleStopWatch { public static voi

public static void main(... ) { Copyright by Tatsuo Minohara 2004 rev. Oct. 6 Macintosh Java Primer Chapter 3-2

2

上達Java解答.doc

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

r3.dvi

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperforme

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

アプレットⅢ

Microsoft PowerPoint - swing2.ppt

r4.dvi

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ

Java演習(9) -- クラスとメソッド --

Java 2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q 2.

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperformed

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

r6.dvi

<4D F736F F F696E74202D AC C8899E D834F E >

2008 e-learning T050050

2 p.2 2 Java > javac Hello0.java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.j

Java演習(2) -- 簡単なプログラム --

Color frontcolor; // Color Graphics gc; // Graphics Frame window; // Frame Java 8-1 new ( ) ; Rectangle Java2 AWT window = new Frame( "Sample" ); rect

-1 new ( ) ; Rectangle Java2 AWT window = new Frame( "Sample" ); rectangle = new Rectangle( 100, 50 ); // // = new ( ) ; Frame window = new Frame( "Sa

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperformed

19 3!! (+) (>) (++) (+=) for while 3.1!! (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics;

ガイダンス

JAVA入門

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

:30 12:00 I. I VII II. III. IV. ( a d) V. VI : this==null, T == N A ActionListener A addactionlistener C class D actionperforme

ガイダンス

r2.dvi

r8.dvi

II Java :30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i

ガイダンス

2

任意の加算プログラム

1 Java Java GUI , 2 2 jlabel1 jlabel2 jlabel3 jtextfield1 jtextfield2 jtextfield3 jbutton1 jtextfield1 jtextfield2 jtextfield3

Thread


Transcription:

Swing GUI JButton,JTextArea, JTextField JComponent JButton JComponent JCanvas JCheckbox JChoice JContainer JLabel JList JScrollbar JTextComponent JPanel JWindow JTextArea JTextField Applet JDialo g JFrame 22-1 JComponent JComponent GUI JComponent JComponent JComponent OFF void Dimension getsize( ) setsize( int w, int h ) setsize( Dimension d ) Dimension height, width JButton b = new JButton( "Hurry Up!" ); add( b ); Dimension bsize = b.getsize( ); System.out.println( "Width: " + bsize.width + " Height : " + bsize.height ); b.setsize( 100, 40 ); Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-1

Point getlocation( ) setlocation( int x, int y ) setlocation( Point p ) Pointx, y Point blocation = b.getlocation( ); System.out.println( "x axis: " + blocation.x + " y axis : " + blocation.y ); b.setlocation( 10, 20 ); Rectanglex, y, width, height Rectangle getbounds( ) setbounds( Rectangle r ) setbounds( int x, int y, int width, int height ) Color getbackground( ) setbackground( Color color ) Color getforeground( ) setforeground( Color color ) Color backcolor = getbackground( ); bb.setbackground( Color.yellow ); Color forecolor = getforeground( ); b.setforeground( Color.red ); Font getfont( ) void setfont( Font font ) ta ta.setfont( new Font( "SansSerif", Font.BOLD, 18 ) ); true false void setvisible( boolean visibleswitch ) boolean isvisible( ) void setenabled( boolean enableswitch ) boolean isenabled( ) true Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-2

b.setvisible( true ); b.setenable( false ); // b // b drawline Graphics getgraphics( ) JContainer getparent( ) null Graphics g = this.getgraphics( ); g.drawline( 10, 10, 100, 100 ); // paint( Graphics g ) repaint( ) JButton ActionListener JCheckbox ItemListener JChoice ItemListener JList ActionListener ItemListener JScrollbar AdjustmentListener JTextArea TextListener JTextField ActionListener TextListener JChoice ActionListener public void actionperformed( ActionEvent e ) ItemListener public void itemstatechanged( ItemEvent e ) TextListener public void textvaluechanged( TextEvent e ) AdjustmentListener public void adjustmentvaluechanged( AdjustmentEvent e ) Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-3

JCanvas ScrollPane JContainer JButton JButton( ) JButton( String label ) String getjlabel( ) setjlabel( String label ) addactionjlistner( ActionListener listener ) removeactionjlistner( ActionJListner listener ) String getactioncommand( ) setactioncommand( String command ) import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing.*; public class SignalButtons extends Applet implements ActionListener { JButton red, green, yellow; green = new JButton( "Green" ); green.setbackground( Color.green ); green.addactionlistener( this ); add( green ); yellow = new JButton( "Yellow" ); yellow.setbackground( Color.yellow ); yellow.addactionlistener( this ); add( yellow ); red = new JButton( "Red" ); red.setbackground( Color.red ); red.addactionlistener( this ); add( red ); green.setvisible( false ); yellow.setvisible( false ); public void actionperformed( ActionEvent e ) { if ( red.isvisible( ) ) { red.setvisible( false ); green.setvisible( true ); else if ( green.isvisible( ) ) { green.setvisible( false ); yellow.setvisible( true ); else { yellow.setvisible( false ); red.setvisible( true ); JCheckbox Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-4

JCheckbox( ) JCheckbox( String JLabel ) JCheckbox( String JLabel, boolean state ) on true off false JCheckbox( String JLabel, boolean state, JCheckboxGroup group ) String getjlabel( ) setjlabel( String JLabel ) boolean getstate( ) setstate( boolean state ) JCheckboxGroup getjcheckboxgroup( ) setjcheckboxgroup( JCheckboxGroup group ) on=true, off=false) additemlistener( ItemListener Listener) removeitemlistener( ItemListener Listener ) itemstatechanged repaintpaint getstate import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing.*; public class CheckTester extends Applet implements ItemListener { JCheckbox frame = new JCheckbox( "JFrame", true ), fill = new JCheckbox( "Fill" ), reverse= new JCheckbox( "Reverse" ); frame.additemlistener( this ); fill.additemlistener( this ); reverse.additemlistener( this ); add( frame ); add( fill ); add( reverse ); public void paint( Graphics g ) { super.paint( g ); if ( fill.getstate( ) ) { g.setcolor( (reverse.getstate( ))? Color.blue : Color.red ); g.fillrect( 20, 30, 100, 100 ); if ( frame.getstate( ) ) { g.setcolor( (reverse.getstate( ))? Color.red : Color.blue ); g.drawrect( 20, 30, 100, 100 ); public void itemstatechanged( ItemEvent e ) { repaint( ); JCheckboxGroup JCheckboxGroup( ) getselectedjcheckbox null Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-5

JCheckbox getselectedjcheckbox( ) setselectedjcheckbox( JCheckbox box ) ItemListener itemstatechanged String fontname [ ] = {"Seif", "SansSerif", "MonoSpaced" ; // JCheckboxGroup group= new JCheckboxGroup( ); JCheckbox fontbox [ ] = new JCheckbox[ fontname.length ];; for ( int i = 0; i< fontname.length ; i++ ) { JChoice fontbox[ i ] = new JCheckbox( fontname[ i ] ); fontbox[ i ].setjcheckboxgroup( group ); add( fontbox[ i ] ); // init JChoice( ) String getitem( int index ) int getitemcount( ) int getselectedindex( ) String getselecteditem( ) add( String item ) additem( String item ) insert( String item, int index ) remove( int index) remove( String item) removeall( ) select( int index ) select( String item ) additemlistener( ItemListener Listener ) removeitemlistener( ItemListener Listener ) ItemListener itemstatechanged import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing.*; public class ColorSelector extends Applet implements ItemListener { JChoice colorselect; int selected = 0; String names [ ] = {"red", "green", "blue", "orange", "yellow" Color colors [ ] = { Color.red, Color.green, Color.blue, Color.orange, Color.yellow ; colorselect = new JChoice( ); for ( int i=0; i< names.length ; i ++ ) { colorselect.additem( names[ i ] ); colorselect.additemlistener( this ); colorselect.select( 0 ); add( colorselect ); public void paint( Graphics g ) { super.paint( g ); g.setcolor( colors[ selected ] ); g.fillrect( 20, 30, 100, 100 ); Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-6

public void itemstatechanged( ItemEvent e ) { selected = colorselect.getselectedindex( ); repaint( ); JLabel drawstring JLabel( ) JLabel( String message ) message JLabel( String message, int align ) align String gettext( ) settext( String message ) int getalignment( ) setalignment( int align ) JLabel.LEFT JLabel.CENTER JLabel.RIGHT init JList add( new JLabel( "Please input name of a fighter", JLabel.CENTER ) ); JLabel level = new JLabel( ); level.settext( 10 + " liters" ); level.setalignment( JLabel.RIGHT ); add( level ); JChoice multiple true false JList( ) JList( int rows ) JList( int rows, boolean multiple ) String getitem( int index ) String [ ] getitems( ) int getitemcount( ) int getrows( ) int getselectedindex( ) int [ ] getselectedindexes( ) String getselecteditem( ) add( String item ) additem( String item ) insert( String item, int index ) remove( int index ) remove( String item ) removeall( ) select( int index ) select( String item ) void deselect( int index ) Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-7

ActionListener ItemListener ItemListener additemlistener( ItemListener Listener ) removeitemlistener( ItemListener Listener ) addactionjlistner( ActionListener Listener ) removeactionjlistner( ActionJListner Listener ) import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class ListTester extends Applet implements ActionListener { String items [ ] = { "White", "Black", "Green", "Red", "Blue" ; JList JList = new JList( ); for ( int i = 0 ; i < items.length ; i++ ) { JList.add( items[ i ] ); JList.addActionListener( this ); add( JList ); public void actionperformed( ActionEvent e ) { System.out.println( JList.getSelectedItem( ) ); JScrollbar JScrollbar( ) JScrollbar( int orientation ) JScrollbar( int orientation, int value, int visible, int minimum, int maximum ) JScrollbar.VERTICAL JScrollbar.HORIZONTAL BlockIncrement VisibleAmount int getblockincrement( ) int getmaximum( ) int getminimum( ) int getorientation( ) int getvalue( ) int getvisibleamount( ) setblockincrement( int block ) setmaximum( int maximum ) setminimum( int minimum ) setorientation( int orientation ) setvalue( int newvalue ) setvisibleamount( int newamount ) setvalues( int value, int visible, int min, int max ) addadjustmentlistener( AdjustmentListener Listener ) removeadjustmentlistener( AdjustmentListener Listener ) 0 100 import java.awt.*; Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-8

import java.awt.event.*; import javax.swing.*; public class JScrollbarTester extends java.applet.applet implements AdjustmentListener { JScrollbar bar= new JScrollbar( JScrollbar.HORIZONTAL, 0, 10, 0, 100 ); JLabel value = new JLabel( "" + bar.getvalue( ) ); setlayout( new BorderLayout( ) ); bar.addadjustmentlistener( this ); add( "South", bar ); add( "Center", value ); public void adjustmentvaluechanged( AdjustmentEvent e ) { value.settext( "" + bar.getvalue( ) ); repaint( ); JTextArea JTextArea.JScrollbarS_NONE JScrollbarS_HORIZONTAL_ONLY JScrollbarS_VERTICAL_ONLYJScrollbarS_BOTH JTextArea( ) JTextArea( String text ) JTextArea( int rows, int columns ) JTextArea(String text, int rows, int columns, int JScrollbars) JTextField String gettext( ) settext( String text ) int getcaretposition( ) setcaretposition( int position ) 0 String getselectedtext( ) int getselectedstart( ) int getselectedend( ) 0 boolean iseditable( ) seteditable( boolean sw ) true select( int start, int end ) selectall( ) Dimension getminimumsize( ) getpreferredsize( ) append( String str ) insert( String str, int pos ) replacerange( String str, int start, int end ) int getcolumns( ) int getrows( ) setcoloumns( int columns ) setrows( int rows ) JTextField addtextlistener( TextListener Listener ) removetextlistener( TextListener Listener ) JTextField JTextArea JTextField( ) JTextField( String text ) JTextField( int columns ) JTextField( String text, int columns ) Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-9

int getcolumns( ) setcolumns( int columns ) char getechochar( ) setechochar( char echo ) boolean echocharisset( ) EnterActionEvent addactionjlistner(actionlistener Listener) removeactionjlistner(actionjlistner Listener) setlayout( null ); setlayout( new FlowLayout( ) ); // setlayout( new FlowLayout( FlowLayout.LEFT ) ); // setlayout( new FlowLayout( FlowLayout.RIGHT ) ); // setlayout( new BorderLayout( ) ); add( "North", new JButton( "OK" ) ); add( "South", new JButton( "Back" ) ); // add( "West", new JButton( "Left" ) ); add( "East", new JButton( "Right" ) ); // add( "Center", new JButton( "Look" ) ); // add setlayout( new GridLayout( 2, 3 ) ); //2 3 setlayout( new GridLayout( 2, 3, 10, 15 ) ); // 10 15 HTML Table GridBagLayout gb = new GridBagLayout( ); GridBagConstraints gc = new GridBagConstraints( ); GridBagConstraints GridBagLayoutsetConstraints JButton button = new JButton( "OK" ); gb.setconstraints( button, gc ); Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-10

int anchor; int fill; int gridwidth, gridheight; int gridx, gridy; int ipadx, ipady; anchor CENTER, EAST, NORTHEAST, NORTH, NORTHWEST, WEST, SOUTHWEST, SOUTH, SOUTHEAST GridBagConstraints.CENTER CENTER fill BOTH, HORIZONTAL, VERTICAL, NONE NONE gridx, gridy 0 init JChoice it OK (JTextField) Cancel 22-2 GridBagLayout gb = new GridBagLayout( ); GridBagConstraints gc = new GridBagConstraints( ); gc.fill = GridBagConstraints.BOTH; // gc.ipadx = 10; gc.ipady = 10; // 10 gc.gridx = 0; gc.gridy = 0; gc.gridwidth = 1; gc.gridheight = 2; JButton JChoice = new JButton( "JChoice It" ); gb.setconstraints( JChoice, gc ); add( JChoice ); gc.gridx = 1; gc.gridy = 0; gc.gridwidth = 2; gc.gridheight = 1; JTextField field = new JTextField( 20 ); gb.setconstraints( field, gc ); add( field ); gc.gridx = 1; gc.gridy = 1; gc.gridwidth = 1; gc.gridheight = 1; // JChoice It // 1 // JTextField // 2 1 // OK JButton ok = new JButton( "OK" ); gb.setconstraints( ok, gc ); add( ok ); gc.gridx = 2; gc.gridy = 1; // Cancel JButton cancel = new JButton( "Cancel" ); gb.setconstraints( cancel, gc ); add( cancel ); JComponent JContainer Applet JPanel JContainer JPanel JWindow A-11 JContainer Applet JDialo g JFrame Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-11

JPanel mypanel = new JPanel( ); // mypanel.setlayout( new GridLayout( 3, 4, 10, 15 ) ); // mypanel.add( new JButton( "WOW" ) ); // add( mypanel ); // JPanel init JPanel myjpanel [ ] = new JPanel[ 3 ]; setlayout( new GridLayout( myjpanel.length, 1 ) ); for ( int i=0; i<myjpanel.length ; i++) { myjpanel[ i ] = new JPanel( ); add( myjpanel[ i ] ); myjpanel[ 0 ].add( new JCheckbox( "Green" ) ); myjpanel[ 0 ].add( new JCheckbox( "Red" ) ); myjpanel[ 0 ].add( new JCheckbox( "Blue" ) ); myjpanel[ 1 ].add( new JTextField( 60 ) ); myjpanel[ 2 ].add( new JButton( "OK" ) ); myjpanel[ 2 ].add( new JButton( "Cancel" ) ); CardLayout card = new CardLayout( ) setlayout( card ); JPanel p1 = new JPanel( ); add( "summer", p1 ); JPanel p2 = new JPanel( ); add( "winter", p2 ); show card.show( this, "summer" ); card.show( this, "winter" ); // summer // winter import java.awt.*; import java.awt.event.*; import java.applet.* ; import javax.swing.*; public class SceneViwer extends Applet implements ActionListener { String course [ ] = { "enterance", "room", "dining", "study", "bedroom", "exit" ; JPanel scene [ ] = new JPanel[ course.length ]; CardLayout scenario = new CardLayout( ); int cur = 0; setlayout( scenario ); Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-12

for ( int i=0; i < course.length ; i++ ) { JButton b = new JButton( course[ i ] ); b.addactionlistener( this ); scene[ i ] = new JPanel( ); scene[ i ].add( JButton ); add( course[ i ], scene[ i ] ); public void paint( Graphics g ) { super.paint( g ); scenario.show( this, course[ cur ] ); public void actionperformed( ActionEvent ae ) { cur = (cur+1) % course.length; repaint( ); JWindow JFrame JDialog JFrame Modal JDialog setvisible true import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JDialogTester extends Applet implements ActionListener { JDialog dialog = new JDialog( new JFrame( ), "Enter Text", true); JButton change = new JButton( "Change" ), ok = new JButton( "OK" ); JTextField present = new JTextField( "None", 20 ), input = new JTextField( 30 ); change.setactioncommand( "Change" ); change.addactionlistener( this ); ok.addactionlistener( this ); input.addactionlistener( this ); present.seteditable( false ); add( present ); add( change ); dialog.setlayout( new FlowLayout( ) ); dialog.add( input ); dialog.add( ok ); public void actionperformed( ActionEvent e ) { if ( e.getactioncommand( ).equals( "Change" ) ) { dialog.show( ); else { JDialog.setVisible( false ); present.settext( input.gettext( ) ); repaint( ); MenuMenuBar JFrame setmenubar Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-13

MenuItemActionListener actionperformed JChoice import import import import java.applet.*; java.awt.*; java.awt.event.*; javax.swing.*; public class MenuBarTester extends Applet implements ActionListener { String command [ ] = { "Start", "Stop", "Continue", "Reset" ; MenuBar mb = new MenuBar( ); Menu menu = new Menu( "File" ); JTextField tf = new JTextField( 30 ); JFrame f = new JFrame( "MenuBarTester" ); for ( int i = 0; i < command.length; i++ ) { MenuItem mitem = new MenuItem( command[ i ] ); mitem.addactionlistener( this ); mitem.setactioncommand( command[ i ] ); menu.add( mitem ); mb.add( menu ); f.setmenubar( mb ); f.setsize( 100, 50 ); f.show( ); add( tf ); public void actionperformed( ActionEvent e ) { tf.settext( e.getactioncommand( ) ); repaint( ); Copyright by Tatsuo Minohara 2003 Rev. 0.9 Macintosh Java Primer Chapter 22-14