際際滷

際際滷Share a Scribd company logo
舒亰舒弍仂从舒 GUI 仆舒 Java
- 弍亳弍仍亳仂亠从舒 AWT (Abstract Window Toolkit)
- 仗舒从亠 java.awt.*
- 弍亳弍仍亳仂亠从舒 JFC (Java Foundation Classes) 仗舒从亠 javax.swing.*
Frame (AWT)  JFrame (Swing)
Button (AWT)  JButton (Swing)


1
仍舒 亟仍 仂亰亟舒仆亳 GUI

2
仍舒 Component (舒弍舒从仆亶)
Ox
Oy
Dimension getSize()

仂亰于舒舒亠 舒亰仄亠 从仂仄仗仂仆亠仆舒

setBounds (int x, int y,
int width, int height)

丕舒仆舒于仍亳于舒亠 舒亰仄亠 从仂仄仗仂仆亠仆舒

int getWidth()
int getHeight()

丿亳亳仆舒 从仂仄仗仂仆亠仆舒
仂舒 从仂仄仗仂仆亠仆舒

isEnabled()
setEnabled(boolean b)

仂于亠从舒 亟仂仗仆仂亳
丕舒仆仂于从舒 亟仂仗仆仂亳

isVisible()
setVisible(boolean b)

仂于亠从舒 于亳亟亳仄仂亳
丕舒仆仂于从舒 于亳亟亳仄仂亳
3
仍舒 Container
Container cont1
Component c1
Component c2

Component c3

仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆舒 从 从仂仆亠亶仆亠: Component add (Component c)

Container 磦仍磳 仆亠于亳亟亳仄仄 从仂仄仗仂仆亠仆仂仄.
亠 从仍舒 仂从仂仆 仆舒仍亠亟仂于舒仆 仂 从仍舒舒 Container.
4
仍舒 仂从仂仆. JFrame
import java.awt.*;
import javax.swing.*;
class Test
{public static void main(String args[ ])
{JFrame jf = new JFrame("Hello,
World!");
jf.setBounds (100,100,300,200);
jf.setVisible(true);
}
}
5
仍舒 仂从仂仆. JWindow
import java.awt.*;
import javax.swing.*;
class Test
{public static void main(String args[ ])
{JFrame jf = new JFrame("Hello,
World!");
jf.setBounds (100,100,300,200);
jf.setVisible(true);
JWindow jw = new JWindow (jf);
jw.setBounds (400,400,500,200);
jw.show(); }
}

6
仍舒 仂从仂仆. JDialog
import java.awt.*;
import javax.swing.*;
class Test
{public static void main(String args[ ])
{JFrame jf = new JFrame("Hello, World!");
jf.setBounds (100,100,300,200);
jf.setVisible(true);
JDialog jd = new JDialog(jf,"Simple Dialog",true);
jd.setBounds (300,300,400,400);
jd.setVisible(true); }
}

7
仍舒 仂从仂仆. JFileChooser
import java.awt.*;
import javax.swing.*;
class Test
{public static void main(String args[ ])
{JFileChooser chooser = new JFileChooser();
int ret = chooser.showOpenDialog(null);
if(ret == JFileChooser.APPROVE_OPTION)
{System.out.println("You've chosen to open
this file: " + chooser.getSelectedFile().getName());
}
}
}

8
舒亳亠从亳亶 从仂仆亠从
亳 仂亰亟舒仆亳亳 从仂仄仗仂仆亠仆舒 舒于仂仄舒亳亠从亳 仂仄亳亠 亠亞仂
亞舒亳亠从亳亶 从仂仆亠从 (graphics context). 仂仆亠从 仂亟亠亢亳
亠从亳亶 亳 舒仍亠仆舒亳于仆亶 于亠 亳仂于舒仆亳 亳 于亠 仂仆舒,
亠从亳亶 亳 亟仍 于于仂亟舒 亠从舒, 亳亠仄 从仂仂亟亳仆舒.
丕仗舒于仍磳 从仂仆亠从仂仄 从仍舒 Graphics. 丐.从. 亞舒亳亠从亳亶
从仂仆亠从 亳仍仆仂 亰舒于亳亳 仂 从仂仆从亠仆仂亶 亞舒亳亠从仂亶
仗仍舒仂仄, 仂 从仍舒 磦仍磳 舒弍舒从仆仄. 舒亢亟舒 JVM
亠舒仍亳亰亠 仄亠仂亟 亳 从仍舒仂于, 仂亰亟舒亠 亳 从亰亠仄仗仍 亟仍
从仂仄仗仂仆亠仆舒. 仂仍亳 仍从 仆舒 仂亰亟舒仆仆亶 亞舒亳亠从亳亶
从仂仆亠从 仄仂亢仆仂  仗仂仄仂 仄亠仂亟舒 Graphics getGraphics().
9
舒亳亠从亳亶 从仂仆亠从.
亠仂亟
drawLine (int x1,int y1, 亳仆亳 亳亰 (x1,y1) 于 (x2,y2)
int x2, int y2)
drawRect (int x, int y,
int width, int height)

礆仂亞仂仍仆亳从: 仍亠于亶 于亠仆亳亶 亞仂仍 (x,y),
亳亳仆舒 width, 于仂舒 height

draw3DRect (int x, int
y, int width, int height,
boolean raised)

3D-仗礆仂亞仂仍仆亳从:
rasied = true  束于仗从仍亶損
raised = false  束于亟舒于仍亠仆仆亶損

drawOval (int x, int y,
int width, int height)

于舒仍, 于仗亳舒仆仆亶 于 仗礆仂亞仂仍仆亳从,
亰舒亟舒仆仆亶 舒亞仄亠仆舒仄亳 仄亠仂亟舒

drawArc (int x, int y,
int width, int height,
int startAngle, int arc)

亞舒 仂于舒仍舒, 于仗亳舒仆仆仂亞仂 于 仗礆仂亞仂仍仆亳从.
亠仍亳亳仆舒 亟亞亳 arc 亞舒亟仂于. 亳于舒亠 仂 startAngle. 丕亞仂仍
仂亳于舒亠 于 亞舒亟舒 仂 仂亳 Ox.
仂仍仂亢亳亠仍仆亶 亞仂仍 - 仗仂亳于 舒仂于仂亶
亠仍从亳, 仂亳舒亠仍仆亶  仗仂 舒仂于仂亶
亠仍从亠.
10
舒亳亠从亳亶 从仂仆亠从.
亠仂亟
drawRoundRect (int x,
int y, int width, int
height, int ar-cWidth, int
arcHeight)

礆仂亞仂仍仆亳从  亰舒从亞仍亠仆仆仄亳
从舒礆亳. 舒从亞仍亠仆亳 于亠亳于舒ム
亠于亠亳仆从舒仄亳 仂于舒仍仂于, 于仗亳舒仆仆 于
仗礆仂亞仂仍仆亳从亳 亳亳仆仂亶 arcWidth 亳
于仂仂亶 arcHeight, 仗仂仂亠仆仆亠 于 亞仍舒
仂仆仂于仆仂亞仂 仗礆仂亞仂仍仆亳从舒.

drawPolyline (int
xPoints[ ], int yPoints[ ],
int nPoints)

丼亠亳 仍仂仄舒仆 仍亳仆亳  于亠亳仆舒仄亳 于
仂从舒 (xPoints[i], yPoints[i]) 亳 亳仍仂仄
于亠亳仆 nPoints

drawPolygon(int
xPoints[ ], int yPoints[ ],
int nPoints)

丼亠亳 亰舒仄从仆 仍仂仄舒仆 
于亠亳仆舒仄亳 于 仂从舒 (xPoints[i],
yPoints[i]) 亳 亳仍仂仄 于亠亳仆 nPoints

fillRect(int x, int y, int
width, int height)

亅亳 仄亠仂亟 舒仆舒仍仂亞亳仆
仂仂于亠于ム亳仄 仄亠仂亟舒仄 draw(), 仆仂
于 仂仍亳亳亠 仂 仆亳 于亠亳于舒ム 亳亞,
亰舒仍亳亠 亠从亳仄 于亠仂仄

fillOval(int x, int y, int
width, int height) 亳 .亟.

11
舒亳亠从亳亶 从仂仆亠从.
亠仂亟

drawString (String s,
int x, int y)

于仂亟亳 仂从 s. 于仂亟 仆舒亳仆舒亠
 仗仂亰亳亳亳 (x,y).

drawBytes (byte b[ ],int
offset, int length, int x,
int y)

于仂亟亳 length 仍亠仄亠仆仂于 仄舒亳于舒 b,
仆舒亳仆舒  亳仆-亟亠从舒 offset. 于仂亟
仆舒亳仆舒亠  仗仂亰亳亳亳 (x,y).

drawChars (char ch[ ],
int offset, int length, int
x, int y)

于仂亟亳 length 仍亠仄亠仆仂于 仄舒亳于舒
ch, 仆舒亳仆舒  亳仆亟亠从舒 offset. 于仂亟
仆舒亳仆舒亠  仗仂亰亳亳亳 (x,y).

12
舒亳亠从亳亶 从仂仆亠从.
舒弍仂舒  于亠仂仄
Color (int red, int green, int blue)
0-255

0-255

0-255

Color (float red, float green, float blue)
0.0 -1.0
Color (int rgb) 23

15

0.0 -1.0

0.0 -1.0
7

0

Color(int r, int g, int b, int a)
仂亰舒仆仂: 0 - 仗仂仍仆舒, 255  仂于.
13
舒亳亠从亳亶 从仂仆亠从.
舒弍仂舒  于亠仂仄
丶于亠仂于亠 从仂仆舒仆:
Color.black
Color.blue
Color.cyan
Color.darkGray
Color.gray
Color.green,
Color.lightGray
Color.magenta
Color.orange
Color.pink
Color.red
Color.white,
Color.yellow

14
舒亳亠从亳亶 从仂仆亠从.
仍舒 Polygon
Polygon(int xPoints[ ], int yPoints[ ], int nPoints)
弌仂亰亟舒亠 仄仆仂亞仂亞仂仍仆亳从  于亠亳仆舒仄亳
(xPoints[i], yPoints[i]). 丼亳仍仂 于亠亳仆  nPoints.

15
舒亳亠从亳亶 从仂仆亠从.
仍舒 Polygon

boolean contains
仂于亠磳, 仍亠亢亳 仍亳 仂从舒 (x,y) 于仆亳
(double x, double y) 仄仆仂亞仂亞仂仍仆亳从舒
boolean contains
仂于亠磳, 仍亠亢亳 仍亳 仗礆仂亞仂仍仆亳从, 亰舒亟舒仆仆亶
(double x, double y, 舒亞仄亠仆舒仄亳 仄亠仂亟舒 于仆亳 仄仆仂亞仂亞仂仍仆亳从舒
double w, double h)
boolean contains
(int x, int y)

仂于亠磳, 仍亠亢亳 仍亳 仂从舒 (x,y) 于仆亳
仄仆仂亞仂亞仂仍仆亳从舒

boolean contains
(Point p)

仂于亠磳, 仍亠亢亳 仍亳 仂从舒 (x,y) 于仆亳
仄仆仂亞仂亞仂仍仆亳从舒

boolean intersects 仂于亠磳, 仗亠亠亠从舒亠 仍亳 仗礆仂亞仂仍仆亳从,
(double x, double y, 亰舒亟舒仆仆亶 舒亞仄亠仆舒仄亳 仄亠仂亟舒 
double w, double h) 仄仆仂亞仂亞仂仍仆亳从仂仄
16
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳


丐亠从仂于亠 仄亠从亳  仆仂仗从亳



个仍舒亢从亳

 束舒亟亳仂仗亠亠从仍ム舒亠仍亳損



弌仗亳从亳

 仂仍 仂 仗亳从仂仄



丐亠从仂于亠 仗仂仍



舒仆亠仍亳 仗仂从从亳  舒仆亠仍亳  于从仍舒亟从舒仄亳



亠亠于

 丐亠从仂于亠 仂弍仍舒亳

 丐舒弍仍亳

仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆舒 从 从仂仆亠亶仆亠: Component add (Component c)
丕亟舒仍亠仆亳亠 从仂仄仗仂仆亠仆舒 亳亰 从仂仆亠亶仆亠舒: void remove (Component obj).
17
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
 弍亳弍仍亳仂亠从亠 Swing 从仂仄仗仂仆亠仆 仗亠亠亟 于于仂亟仂仄 仆舒
从舒仆 亟仂仍亢仆 弍 仗仂仄亠亠仆 仆亠 于 仂从仆仂, 舒 于仆
仗亠亳舒仍仆仂亞仂 从仂仆亠亶仆亠舒, 从仂仂亶 仆舒亰于舒亠
仗舒仆亠仍 仂亟亠亢舒仆亳 (content pane). 亅仂 从仂仆亠亶仆亠
仆亠 仆亢仆仂 仂亰亟舒于舒, 亠亞仂 仄仂亢仆仂 仗仂仍亳
亟仍 仂从仆舒 仗仂亟仂弍仆仂 亞舒亳亠从仂仄 从仂仆亠从:
JFrame f = new JFrame("Test");
Container cp = f.getContentPane();
仂仍亠 仂亞仂 于亠 仂仗亠舒亳亳 亟仂弍舒于仍亠仆亳/亟舒仍亠仆亳
从仂仄仗仂仆亠仆仂于 于仗仂仍仆ム 亟仍 仗舒仆亠仍亳
仂亟亠亢舒仆亳, 舒 仆亠 亟仍 舒仄仂亞仂 仂从仆舒.

18
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
舒亳亠从亳亠 亳亰仂弍舒亢亠仆亳
仂仆从仂 从仍舒舒 ImageIcon:
ImageIcon(String filename)
仆仂于仆亠 仄亠仂亟 从仍舒舒 ImageIcon:
int getIconHeight()
int getIconWidth()
void paintIcon(Component comp, Graphics g, int x, int y)

19
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
丐亠从仂于亠 仄亠从亳
JLabel (String str)
JLabel (Icon id_icon)
JLabel (String str, Icon id_icon, int align)
JLabel.LEFT

- 于舒于仆亳于舒仆亳亠 仗仂 仍亠于仂仄 从舒

JLabel.RIGHT - 于舒于仆亳于舒仆亳亠 仗仂 仗舒于仂仄 从舒
JLabel.CENTER

- 于舒于仆亳于舒仆亳亠 仗仂 亠仆

void setText(String str)

String getText( )

void setAlignment(int align)

int getAlignment( )

void setIcon(Icon id_icon)

Icon getIcon( )
20
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
丕仗舒于仍ム亳亠 从仆仂仗从亳
JButton(String str)
JButton(Icon id_icon)
亠仂亟, 仗仂亰于仂仍ム亳亠 仗舒于仍 于亳亟仂仄 从仆仂仗从亳:
String getLabel( )

void setLabel(String str)

Icon getLabel( )

void setIcon(Icon id_icon)

21
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
个仍舒亢从亳 - 仗亠亠从仍ム舒亠仍亳
JCheckBox (String str, Icon id_icon, boolean state)
丕仗舒于仍亠仆亳亠 仂仂礌亳亠仄 仍舒亢从舒 亳亰 仗仂亞舒仄仄
仂亠于仍磳  仗仂仄仂 仄亠仂亟仂于:
boolean getSelected()
void setSelected(boolean state)

22
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
束舒亟亳仂-仗亠亠从仍ム舒亠仍亳損
JRadioButton (String str, Icon id_icon, boolean state)
束舒亟亳仂仗亠亠从仍ム舒亠仍亳損 亟仂仍亢仆 弍 仂弍亠亟亳仆亠仆 于
亞仗仗, 于 仗亠亟亠仍舒 从仂仂仂亶 弍亟亠 仂弍亠仗亠亳于舒
仆亳从舒仍仆仂 于弍仂舒 仍亠仄亠仆舒. 丼仂弍 仂亰亟舒 亞仗仗
仂亰亟舒亠 从亰亠仄仗仍 仂弍亠从舒 仗亠亳舒仍仆仂亞仂 从仍舒舒
ButtonGroup. 舒仍亠亠 于亠 仂亰亟舒仆仆亠 舒亟亳仂仗亠亠从仍ム舒亠仍亳
亟仂弍舒于仍ム 于 仂亰亟舒仆仆 亞仗仗 (仂 仆亠 仂仄亠仆磳
仆亠仂弍仂亟亳仄仂亳 亳 亟仂弍舒于仍亠仆亳 从 仗舒仆亠仍亳 仂亟亠亢舒仆亳).
23
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
束舒亟亳仂-仗亠亠从仍ム舒亠仍亳損
JFrame f = new JFrame("RadioButton Example");
Container cp = f.getContentPane();
JRadioButton jrb1 = new JRadioButton("a",false);
JRadioButton jrb2 = new JRadioButton("b",false);
JRadioButton jrb3 = new JRadioButton("c",true);
ButtonGroup bg = new ButtonGroup();
JButton jb = new JButton("OK");
bg.add(jrb1);bg.add(jrb2);bg.add(jrb3);
cp.add(jrb1);cp.add(jrb2);cp.add(jrb3);cp.add(jb);
f.setVisible(true);
24
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
束舒亟亳仂-仗亠亠从仍ム舒亠仍亳損

25
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
舒从于舒ム亳亠 仗亳从亳
JComboBox()
JComboBox(Vector v[ ])
JComboBox(Object obj[ ])
仂弍舒于仍亠仆亳亠 仍亠仄亠仆舒 于 仗亳仂从: addItem(Object item)
舒于从舒 仍亠仄亠仆舒 于 仗亳仂从: insertItemAt(Object anObject, int index)
丕亟舒仍亠仆亳亠 仍亠仄亠仆仂于 亳亰 仗亳从舒:
void removeItem (String text)
void removeItemAt (int index)
void RemoveAllItems ()

26
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
舒从于舒ム亳亠 仗亳从亳

舒弍仂舒  于弍舒仆仆仄亳 仍亠仄亠仆舒仄亳:
String getSelectedItem( )

void setSelectedItem (Object obj)

int getSelectedIndex( )

void setSelectedIndex (int index)

丕舒仆仂于从舒 亠亢亳仄舒 亠亟舒从亳仂于舒仆亳:
void setEditable (boolean state)

27
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
弌仗亳从亳
JList(Vector v[ ])
JList(Object obj[ ])
弍亠从 亳仗舒 JList 仆亠 仗仂亟亟亠亢亳于舒ム 舒于仂仄舒亳亠从
仗仂从从. 仂仂仄 亟仍 仂亞仂, 仂弍 仍亠仄亠仆 于 仗亳从亠 仄仂亞仍亳
仗仂从亳于舒, 仗亳仂从 仆亠仂弍仂亟亳仄仂 仗仂仄亠亳 于 仗亠亳舒仍仆亶
仂弍亠从 JScrollPane, 舒 亢亠 仂 仂弍亠从 亟仂弍舒于亳 于 从仂仆亠亶仆亠.

28
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
弌仗亳从亳
JFrame f = new JFrame();
Container cp = f.getContentPane();
f.setBounds(100,100,300,300);
String s[ ] = {"1","2","3","4","5","6","7","8","9","10"};
JList jl = new JList(s);
jl.setBounds(10,10,30,30);
JScrollPane p = new JScrollPane(jl);
cp.add(p);
f.setVisible(true);
29
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
弌仗亳从亳

30
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
弌仗亳从亳
仍 仂仗亠亟亠仍亠仆亳 于弍舒仆仆仂亞仂 仍亠仄亠仆舒
(仍亠仄亠仆仂于) 亳仗仂仍亰ム 仄亠仂亟:
Object getSelectedValue()
Object[ ] getSelectedValues()
int getSelectedIndex( )
int[ ] getSelectedIndices( )

31
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
JTextField( )

丐亠从仂于亠 仗仂仍

JTextField(int numChars)
JTextField(String str)
JTextField(String str, int numChars)
String getText()

仂亰于舒舒亠 仂从, 仂亟亠亢舒ム 于 仗仂仍亠
于于仂亟舒.

void setText (String str)

丕舒仆舒于仍亳于舒亠 于 仗仂仍亠 于于仂亟舒 亠从 str.

String getSelectedText() 仂亰于舒舒亠 于亟亠仍亠仆仆 舒 亠从舒.
void select (int start, int
end)

仂亞舒仄仄仆仂亠 于亟亠仍亠仆亳亠 舒亳 亠从舒 于 仗仂仍亠
于于仂亟舒 仆舒亳仆舒  仗仂亰亳亳亳 start 亟仂 仗仂亰亳亳亳 end.

void setEchoChar(char
ch)

仍 于于仂亟舒 仗舒仂仍亠亶
32
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
JTextArea( )

丐亠从仂于亠 仂弍仍舒亳

JTextArea(int numLines, int numChars)
JTextArea(String str)
JTextArea(String str, int numLines, int numChars)
void append (String str)

弌仂从舒 str 亟仂弍舒于仍磳 从 从仂仆 亠从亠亞仂 亠从舒

void insert (String str,
int index)

弌仂从舒 str 于舒于仍磳 于 仗仂亰亳亳, 从舒亰舒仆仆 于
仗舒舒仄亠亠 index.

void replaceRange
(String str, int start, int
end)

舒仄亠仆磳 亳仄于仂仍 仂 start 亟仂 end-1 仂从仂亶 str.

仍 仂弍亠仗亠亠仆亳 仗仂从从亳 JTextField 亳 JTextArea 亟仂仍亢仆 弍
仗仂仄亠亠仆 于 从仂仆亠亶仆亠 JScrollPane.
33
舒亳亠从亳亶 从仂仆亠从.
亅仍亠仄亠仆 仗舒于仍亠仆亳
亞亳亠 仍亠仄亠仆
JTabbedPane  仗舒仆亠仍 仂 于从仍舒亟从舒仄亳
JTree  亟亠亠于
JTable  舒弍仍亳
JSplitPane  束舒亠仗仍亠仆仆亠損 仂从仆舒
J際際滷r  仗仂仍亰仆从仂于亶 亠亞仍仂
JProgressBar  亳仆亟亳从舒仂 仗仂亞亠舒

34
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
舒亰仄亠亠仆亳亠 从仂仄仗仂仆亠仆仂于 于 仂从仆亠  仗仂仄仂
setBounds() 亳仄亠亠 仄仆仂亢亠于仂 仆亠亟仂舒从仂于:
-

仆亠仂弍仂亟亳仄仂 于仆 舒亳于舒
从仂仂亟亳仆舒

-

仗亳 亳亰仄亠仆亠仆亳亳 舒亰仄亠仂于 仂从仆舒, 从仂仄仗仂仆亠仆
束仗仂仗仍于損

-

亠磳 从仂仗仍舒仂仄仆仂

仂仂仄 亠于ム 仄亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
 亠亟于舒 舒于仂仄舒亳亠从仂亞仂 舒亰仄亠亠仆亳
从仂仄仗仂仆亠仆仂于 于 仂从仆亠
35
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
LayoutManager
FlowLayout
BorderLayout
GridLayout
CardLayout
GridBagLayout
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 舒仆舒于仍亳于舒亠 仄亠仂亟仂仄
void setLayout (LayoutManager obj)
36
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
FlowLayout
FlowLayout  仄亠仆亠亟亢亠 仗仂仂仆仂亶
从仂仄仗仂仆仂于从亳. 仆 舒亰仄亠舒亠 从仂仄仗仂仆亠仆
于 仂从仆亠 仆舒亳仆舒 仂 仍亠于仂亞仂 于亠仆亠亞仂 亞仍舒
仍亠于舒 仆舒仗舒于仂 亳 于亠 于仆亳亰.
仂仆从仂:
FlowLayout (int align, int h, int v)
FlowLayout (int align)
FlowLayout ()
亠仂亟:
void setAlignment (int align)
void setHgap (int hgap)
void setVgap (int vgap)
37
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
FlowLayout
f.setLayout(new FlowLayout());
JRadioButton jrb1 = new JRadioButton("a",false);
JRadioButton jrb2 = new JRadioButton("b",false);
JRadioButton jrb3 = new JRadioButton("c",true);
JButton jb1 = new JButton ("Yes");
JButton jb2 = new JButton ("No");
JButton jb3 = new JButton ("Cancel");
ButtonGroup bg = new ButtonGroup();
bg.add(jrb1); bg.add(jrb2); bg.add(jrb3);
cp.add(jb1);cp.add(jb2);cp.add(jb3);cp.add(jrb1);cp.add(jrb2);
cp.add(jrb3);f.setVisible(true);

38
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
FlowLayout

39
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
BorderLayout
North
West

Center

East

South
仂仆从仂 从仍舒舒 BorderLayout:
BorderLayout ()
BorderLayout (int horz, int vert)

40
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
BorderLayout
仂弍舒于仍 从仂仄仗仂仆亠仆 于 仂仄 仍舒亠 仄仂亢仆仂  仗仂仄仂
仗亠亳舒仍仆仂亶 仂仄 仄亠仂亟舒 add():
void add (Component comp, Object region)
亞亟亠 仗舒舒仄亠 region 亟仂仍亢亠仆 仗亳仆亳仄舒 仂亟仆仂 亳亰 仍亠亟ム亳
亰仆舒亠仆亳亶:
BorderLayout.NORTH
BorderLayout.SOUTH
BorderLayout.EAST
BorderLayout.WEST
BorderLayout.CENTER
41
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
BorderLayout
JFrame f = new JFrame();
Container cp = f.getContentPane();
// 弌仂亰亟舒亠仄 仗舒仆亠仍 2  亠仄 从仆仂仗从舒仄亳
Panel p2 = new Panel();
p2.add(new JButton(仗仂仍仆亳));
p2.add(new JButton(仄亠仆亳")) ;
p2.add(new JButton(亶亳"));
// 弌仂亰亟舒亠仄 仗舒仆亠仍 p1 亳 舒仆舒于仍亳于舒亠仄 亟仍 仆亠亠
从仂仄仗仂仆仂于从 BorderLayout
Panel p1 = new Panel();
p1.setLayout(new BorderLayout());

42
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
BorderLayout

p1.add (p2, BorderLayout.SOUTH);
p1.add(new TextField(束仂仍亠 于于仂亟舒損, 20), BorderLayout.NORTH);
p1.add(new TextArea (束弍仍舒 于于仂亟舒損, 5, 20,
TextArea.SCROLLBARS_NONE), BorderLayout.CENTER);
cp.add (new Scrollbar (Scrollbar. HORIZONTAL),
BorderLayout.SOUTH);
cp.add(new Scrollbar(Scrollbar.VERTICAL), BorderLayout.EAST) ;
cp.add(p1, BorderLayout.CENTER) ;
f.setVisible(true);
43
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
BorderLayout

44
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
GridLayout
亠仆亠亟亢亠 GridLayout 舒亰仄亠舒亠 从仂仄仗仂仆亠仆 于 亟于仄亠仆仂亶 亠从亠
(亳仆仂亞亟舒 舒从仂亠 舒亰仄亠亠仆亳亠 仆舒亰于舒ム 舒弍仍亳仆仄). 丼亳仍仂 仂从 亳
仂仍弍仂于 亠从亳 仍亠亟亠 亰舒亟舒于舒 仗亳 仂亰亟舒仆亳亳 从亰亠仄仗仍舒
仂弍亠从舒 GridLayout. 仂仄仗仂仆亠仆 舒亰仄亠舒ム 仍亠于舒 仆舒仗舒于仂 仗仂
仂从舒仄 仂亰亟舒仆仆仂亶 舒弍仍亳 于 仂仄 仗仂磲从亠, 于 从仂仂仂仄 仂仆亳
亰舒亟舒仆 仄亠仂亟仂仄 add().
仂仆从仂, 仂仗亠亟亠仍亠仆仆亠 于 从仍舒亠 GridLayout:
GridLayout()
GridLayout(int numRows, int numColumns)
GridLayout(int numRows, int numColumns, int horz, int vert)
45
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
GridLayout

仆亳仄舒仆亳亠! 仍亳 亳仍仂 从仂仄仗仂仆亠仆仂于 > 亳仍舒 从仍亠仂从, 仂:
- 亠仍亳 numRows != 0 & numColumns !=0 ->
numColumns 亳亞仆仂亳亠 亳 亳仍仂 仂仍弍仂于
舒仆舒于仍亳于舒亠 舒从, 仂弍 仄亠亳仍亳 于亠
从仂仄仗仂仆亠仆
- 亠仍亳 numRows == 0 -> 亳仍仂 仂从 舒仆舒于仍亳于舒亠
舒从, 仂弍 仄亠亳仍亳 于亠 从仂仄仗仂仆亠仆

46
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
GridLayout
JFrame f = new JFrame();
Container cp = f.getContentPane();
f.setLayout(new GridLayout(3, 2));
f.add(new JButton("1")); f.add(new JButton("2"));
f.add(new JButton("3")); f.add(new JButton("4"));
f.add(new JButton("5")); f.add(new JButton("6"));
f.add(new JButton("7")); f.add(new JButton("8"));
f.add(new JButton("9"));
f.setVisible(true);
47
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
GridLayout

48
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
CardLayout
亠仆亠亟亢亠 CardLayout 仗仂从舒亰于舒亠 于 从仂仆亠亶仆亠亠 仂仍从仂 仗亠于亶
从仂仄仗仂仆亠仆. 舒仍仆亠 从仂仄仗仂仆亠仆 仍亠亢舒 仗仂亟 仗亠于仄 于
仂仗亠亟亠仍亠仆仆仂仄 仗仂磲从亠 从舒从 亳亞舒仍仆亠 从舒 于 从仂仍仂亟亠.
 舒仗仂仍仂亢亠仆亳亠 仂仗亠亟亠仍磳 仗仂磲从仂仄 于亰仂于舒 仄亠仂亟仂于 add().
c仍亠亟ム亳亶 从仂仄仗仂仆亠仆

next(Container c)

仗亠亟亟亳亶

previous(Container c)

仗亠于亶

first(Container c)

仗仂仍亠亟仆亳亶

last(Container c)

亞仄亠仆 亳 仄亠仂亟仂于  仍从舒 仆舒 从仂仆亠亶仆亠, 于 从仂仂亶
仗仂仄亠亠仆 从仂仄仗仂仆亠仆, 仂弍仆仂 this.
49
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
CardLayout
仂仆从仂:
CardLayout() 仆亠 仂亟亠仍磳 从仂仄仗仂仆亠仆 仂 亞舒仆亳 从仂仆亠亶仆亠舒
CardLayout(int hgap, int vgap) 亰舒亟舒亠 亞仂亳亰仂仆舒仍仆亠 亳
于亠亳从舒仍仆亠 仗仂仄亠亢从亳 仄亠亢亟 从仂仄仗仂仆亠仆仂仄 亳 亞舒仆亳舒仄亳
从仂仆亠亶仆亠舒.
CardLayout 仗仂亰于仂仍磳 仂亞舒仆亳亰仂于舒 亳 仗仂亳亰于仂仍仆亶 亟仂仗 从
从仂仄仗仂仆亠仆舒仄. 亠仂亟 add() 亟仍 仂亞仂 仄亠仆亠亟亢亠舒 亳仄亠亠 于亳亟
add(Component comp, Object name)
仂从舒亰舒 仆亢仆亶 从仂仄仗仂仆亠仆  亳仄亠仆亠仄 name 仄仂亢仆仂  仗仂仄仂
仄亠仂亟舒
show(Container parent, String name)

50
亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
CardLayout
Panel p = new Panel();
CardLayout c = new CardLayout();
p.setLayout(c);
Panel p1 = new Panel();
Panel p2 = new Panel();
Panel p3 = new Panel();
p.add(p1,"1");
p.add(p2,"2");
p.add(p3,"3");
c.next(p);
51
VE  Visual Editor
舒亰舒弍仂从舒 GUI c 仗仂仄仂
于亳亰舒仍仆仂亞仂 亠亟舒从仂舒
VE  Visual Editor. 仍舒亞亳仆 亟仍 亠亟 舒亰舒弍仂从亳 Eclipse IDE.
 仂亰于仂仍磳 舒弍仂舒  亞舒亳亠从亳仄亳 弍亳弍仍亳仂亠从舒仄亳 Java
Swing 亳 Java AWT.
 丕仗仂舒亠 舒弍仂  从仂仄仗仂仆亠仆舒仄亳
 仂亟亟亠亢亳于舒亠 仄亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳
 于仂仄舒亳亠从仂亠 亟仂弍舒于仍亠仆亳亠 仂弍舒弍仂亳从仂于 (仍舒亠仍亠亶)
仂弍亳亶.

52
VE  Visual Editor
丕舒仆仂于从舒
舒亶亳 于 Eclipse  Help->Install New Software.
舒亢舒 从仆仂仗从 Add 亳 从舒亰舒 仗
http://visualeditor.sourceforge.net/updates/1.5.0

53
54
55
VE  Visual Editor
丐亳 仗亠亟舒于仍亠仆亳


Design  从舒从 弍亟亠 于亞仍磲亠 仂从仆仂



Source - 亳仂亟仆亶 从仂亟



Palette - 仗舒仍亳舒 亞舒亳亠从亳
仍亠仄亠仆仂于



Properties  仗仂仄仂 亳 舒仆仂于从舒
于仂亶于 从仂仄仗仂仆亠仆舒.



Java Beans  亟亠亠于仂 于仍仂亢亠仆仆仂亳
从仂仄仗仂仆亠仆仂于

56
Design
Palette
Source

Properties
Java Beans
57
Visual Editor. 丐亳仗仂于亠 仂仗亠舒亳亳.
从 从仍舒 于 亠亟舒从仂亠
丼仂弍 仂从 亠于ム亳亶 从仍舒 于 于亳亰舒仍仆仂仄
亠亟舒从仂亠:
Package Explorer - 于弍亠亳亠 亳仂亟仆亶 舒亶仍 .java
Open With > Visual Editor 亳亰 于仗舒亟舒ム亠亞仂 仄亠仆.

弌仂亰亟舒仆亳亠 仆仂于仂亞仂 于亳亰舒仍仆仂亞仂
从仍舒舒

 File -> New -> Visual Class  Name - 亳仄 从仍舒舒
 Style  于弍舒 仂亟亳亠仍从亳亶 从仍舒:
 JFrame
 Japplet
 ..

58
59
仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆仂于
亳 亳亰仄亠仆亠仆亳亠 亳 于仂亶于





仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆仂于  仗亠仄 仗亠亠舒从亳于舒仆亳
 仗舒仆亠仍亳
亰仄亠仆亠仆亳亠 Layout Manager  于 从仂仆亠从仆仂仄 仄亠仆
仗舒仆亠仍亳 仂从仆舒 亳仍亳 舒仗仗仍亠舒  Customize Layout 亳仍亳
Set Layout
丕弍舒 仄亠仆亠亟亢亠 从仂仄仗仂仆亠仆仂于 setLayoutManager(null)  于 从仂亟亠
 仂仄 仍舒亠 仄仂亢仆仂 亳亰仄亠仆 舒亰仄亠亠仆亳亠 亳
舒亰仄亠 从仂仄仗仂仆亠仆仂于 于仆

60
仂弍舒于亳 仆舒亟仗亳
仆舒 从仂仄仗仂仆亠仆

61
亠亠仗仂磲仂亳于舒仆亳亠
从仂仄仗仂仆亠仆仂于

62
亰仄亠仆亠仆亳亠 舒亰仄亠仂于
从仂仄仗仂仆亠仆仂于

63
仂弍舒于仍亠仆亳亠
仂弍舒弍仂亳从仂于 仂弍亳亶

64
仂弍舒于仍亠仆亳亠 仂弍亳

65
舒于仆亳于舒仆亳亠 仍亠仄亠仆仂于

More Related Content

6. java lecture swing

  • 1. 舒亰舒弍仂从舒 GUI 仆舒 Java - 弍亳弍仍亳仂亠从舒 AWT (Abstract Window Toolkit) - 仗舒从亠 java.awt.* - 弍亳弍仍亳仂亠从舒 JFC (Java Foundation Classes) 仗舒从亠 javax.swing.* Frame (AWT) JFrame (Swing) Button (AWT) JButton (Swing) 1
  • 3. 仍舒 Component (舒弍舒从仆亶) Ox Oy Dimension getSize() 仂亰于舒舒亠 舒亰仄亠 从仂仄仗仂仆亠仆舒 setBounds (int x, int y, int width, int height) 丕舒仆舒于仍亳于舒亠 舒亰仄亠 从仂仄仗仂仆亠仆舒 int getWidth() int getHeight() 丿亳亳仆舒 从仂仄仗仂仆亠仆舒 仂舒 从仂仄仗仂仆亠仆舒 isEnabled() setEnabled(boolean b) 仂于亠从舒 亟仂仗仆仂亳 丕舒仆仂于从舒 亟仂仗仆仂亳 isVisible() setVisible(boolean b) 仂于亠从舒 于亳亟亳仄仂亳 丕舒仆仂于从舒 于亳亟亳仄仂亳 3
  • 4. 仍舒 Container Container cont1 Component c1 Component c2 Component c3 仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆舒 从 从仂仆亠亶仆亠: Component add (Component c) Container 磦仍磳 仆亠于亳亟亳仄仄 从仂仄仗仂仆亠仆仂仄. 亠 从仍舒 仂从仂仆 仆舒仍亠亟仂于舒仆 仂 从仍舒舒 Container. 4
  • 5. 仍舒 仂从仂仆. JFrame import java.awt.*; import javax.swing.*; class Test {public static void main(String args[ ]) {JFrame jf = new JFrame("Hello, World!"); jf.setBounds (100,100,300,200); jf.setVisible(true); } } 5
  • 6. 仍舒 仂从仂仆. JWindow import java.awt.*; import javax.swing.*; class Test {public static void main(String args[ ]) {JFrame jf = new JFrame("Hello, World!"); jf.setBounds (100,100,300,200); jf.setVisible(true); JWindow jw = new JWindow (jf); jw.setBounds (400,400,500,200); jw.show(); } } 6
  • 7. 仍舒 仂从仂仆. JDialog import java.awt.*; import javax.swing.*; class Test {public static void main(String args[ ]) {JFrame jf = new JFrame("Hello, World!"); jf.setBounds (100,100,300,200); jf.setVisible(true); JDialog jd = new JDialog(jf,"Simple Dialog",true); jd.setBounds (300,300,400,400); jd.setVisible(true); } } 7
  • 8. 仍舒 仂从仂仆. JFileChooser import java.awt.*; import javax.swing.*; class Test {public static void main(String args[ ]) {JFileChooser chooser = new JFileChooser(); int ret = chooser.showOpenDialog(null); if(ret == JFileChooser.APPROVE_OPTION) {System.out.println("You've chosen to open this file: " + chooser.getSelectedFile().getName()); } } } 8
  • 9. 舒亳亠从亳亶 从仂仆亠从 亳 仂亰亟舒仆亳亳 从仂仄仗仂仆亠仆舒 舒于仂仄舒亳亠从亳 仂仄亳亠 亠亞仂 亞舒亳亠从亳亶 从仂仆亠从 (graphics context). 仂仆亠从 仂亟亠亢亳 亠从亳亶 亳 舒仍亠仆舒亳于仆亶 于亠 亳仂于舒仆亳 亳 于亠 仂仆舒, 亠从亳亶 亳 亟仍 于于仂亟舒 亠从舒, 亳亠仄 从仂仂亟亳仆舒. 丕仗舒于仍磳 从仂仆亠从仂仄 从仍舒 Graphics. 丐.从. 亞舒亳亠从亳亶 从仂仆亠从 亳仍仆仂 亰舒于亳亳 仂 从仂仆从亠仆仂亶 亞舒亳亠从仂亶 仗仍舒仂仄, 仂 从仍舒 磦仍磳 舒弍舒从仆仄. 舒亢亟舒 JVM 亠舒仍亳亰亠 仄亠仂亟 亳 从仍舒仂于, 仂亰亟舒亠 亳 从亰亠仄仗仍 亟仍 从仂仄仗仂仆亠仆舒. 仂仍亳 仍从 仆舒 仂亰亟舒仆仆亶 亞舒亳亠从亳亶 从仂仆亠从 仄仂亢仆仂 仗仂仄仂 仄亠仂亟舒 Graphics getGraphics(). 9
  • 10. 舒亳亠从亳亶 从仂仆亠从. 亠仂亟 drawLine (int x1,int y1, 亳仆亳 亳亰 (x1,y1) 于 (x2,y2) int x2, int y2) drawRect (int x, int y, int width, int height) 礆仂亞仂仍仆亳从: 仍亠于亶 于亠仆亳亶 亞仂仍 (x,y), 亳亳仆舒 width, 于仂舒 height draw3DRect (int x, int y, int width, int height, boolean raised) 3D-仗礆仂亞仂仍仆亳从: rasied = true 束于仗从仍亶損 raised = false 束于亟舒于仍亠仆仆亶損 drawOval (int x, int y, int width, int height) 于舒仍, 于仗亳舒仆仆亶 于 仗礆仂亞仂仍仆亳从, 亰舒亟舒仆仆亶 舒亞仄亠仆舒仄亳 仄亠仂亟舒 drawArc (int x, int y, int width, int height, int startAngle, int arc) 亞舒 仂于舒仍舒, 于仗亳舒仆仆仂亞仂 于 仗礆仂亞仂仍仆亳从. 亠仍亳亳仆舒 亟亞亳 arc 亞舒亟仂于. 亳于舒亠 仂 startAngle. 丕亞仂仍 仂亳于舒亠 于 亞舒亟舒 仂 仂亳 Ox. 仂仍仂亢亳亠仍仆亶 亞仂仍 - 仗仂亳于 舒仂于仂亶 亠仍从亳, 仂亳舒亠仍仆亶 仗仂 舒仂于仂亶 亠仍从亠. 10
  • 11. 舒亳亠从亳亶 从仂仆亠从. 亠仂亟 drawRoundRect (int x, int y, int width, int height, int ar-cWidth, int arcHeight) 礆仂亞仂仍仆亳从 亰舒从亞仍亠仆仆仄亳 从舒礆亳. 舒从亞仍亠仆亳 于亠亳于舒ム 亠于亠亳仆从舒仄亳 仂于舒仍仂于, 于仗亳舒仆仆 于 仗礆仂亞仂仍仆亳从亳 亳亳仆仂亶 arcWidth 亳 于仂仂亶 arcHeight, 仗仂仂亠仆仆亠 于 亞仍舒 仂仆仂于仆仂亞仂 仗礆仂亞仂仍仆亳从舒. drawPolyline (int xPoints[ ], int yPoints[ ], int nPoints) 丼亠亳 仍仂仄舒仆 仍亳仆亳 于亠亳仆舒仄亳 于 仂从舒 (xPoints[i], yPoints[i]) 亳 亳仍仂仄 于亠亳仆 nPoints drawPolygon(int xPoints[ ], int yPoints[ ], int nPoints) 丼亠亳 亰舒仄从仆 仍仂仄舒仆 于亠亳仆舒仄亳 于 仂从舒 (xPoints[i], yPoints[i]) 亳 亳仍仂仄 于亠亳仆 nPoints fillRect(int x, int y, int width, int height) 亅亳 仄亠仂亟 舒仆舒仍仂亞亳仆 仂仂于亠于ム亳仄 仄亠仂亟舒仄 draw(), 仆仂 于 仂仍亳亳亠 仂 仆亳 于亠亳于舒ム 亳亞, 亰舒仍亳亠 亠从亳仄 于亠仂仄 fillOval(int x, int y, int width, int height) 亳 .亟. 11
  • 12. 舒亳亠从亳亶 从仂仆亠从. 亠仂亟 drawString (String s, int x, int y) 于仂亟亳 仂从 s. 于仂亟 仆舒亳仆舒亠 仗仂亰亳亳亳 (x,y). drawBytes (byte b[ ],int offset, int length, int x, int y) 于仂亟亳 length 仍亠仄亠仆仂于 仄舒亳于舒 b, 仆舒亳仆舒 亳仆-亟亠从舒 offset. 于仂亟 仆舒亳仆舒亠 仗仂亰亳亳亳 (x,y). drawChars (char ch[ ], int offset, int length, int x, int y) 于仂亟亳 length 仍亠仄亠仆仂于 仄舒亳于舒 ch, 仆舒亳仆舒 亳仆亟亠从舒 offset. 于仂亟 仆舒亳仆舒亠 仗仂亰亳亳亳 (x,y). 12
  • 13. 舒亳亠从亳亶 从仂仆亠从. 舒弍仂舒 于亠仂仄 Color (int red, int green, int blue) 0-255 0-255 0-255 Color (float red, float green, float blue) 0.0 -1.0 Color (int rgb) 23 15 0.0 -1.0 0.0 -1.0 7 0 Color(int r, int g, int b, int a) 仂亰舒仆仂: 0 - 仗仂仍仆舒, 255 仂于. 13
  • 14. 舒亳亠从亳亶 从仂仆亠从. 舒弍仂舒 于亠仂仄 丶于亠仂于亠 从仂仆舒仆: Color.black Color.blue Color.cyan Color.darkGray Color.gray Color.green, Color.lightGray Color.magenta Color.orange Color.pink Color.red Color.white, Color.yellow 14
  • 15. 舒亳亠从亳亶 从仂仆亠从. 仍舒 Polygon Polygon(int xPoints[ ], int yPoints[ ], int nPoints) 弌仂亰亟舒亠 仄仆仂亞仂亞仂仍仆亳从 于亠亳仆舒仄亳 (xPoints[i], yPoints[i]). 丼亳仍仂 于亠亳仆 nPoints. 15
  • 16. 舒亳亠从亳亶 从仂仆亠从. 仍舒 Polygon boolean contains 仂于亠磳, 仍亠亢亳 仍亳 仂从舒 (x,y) 于仆亳 (double x, double y) 仄仆仂亞仂亞仂仍仆亳从舒 boolean contains 仂于亠磳, 仍亠亢亳 仍亳 仗礆仂亞仂仍仆亳从, 亰舒亟舒仆仆亶 (double x, double y, 舒亞仄亠仆舒仄亳 仄亠仂亟舒 于仆亳 仄仆仂亞仂亞仂仍仆亳从舒 double w, double h) boolean contains (int x, int y) 仂于亠磳, 仍亠亢亳 仍亳 仂从舒 (x,y) 于仆亳 仄仆仂亞仂亞仂仍仆亳从舒 boolean contains (Point p) 仂于亠磳, 仍亠亢亳 仍亳 仂从舒 (x,y) 于仆亳 仄仆仂亞仂亞仂仍仆亳从舒 boolean intersects 仂于亠磳, 仗亠亠亠从舒亠 仍亳 仗礆仂亞仂仍仆亳从, (double x, double y, 亰舒亟舒仆仆亶 舒亞仄亠仆舒仄亳 仄亠仂亟舒 double w, double h) 仄仆仂亞仂亞仂仍仆亳从仂仄 16
  • 17. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 丐亠从仂于亠 仄亠从亳 仆仂仗从亳 个仍舒亢从亳 束舒亟亳仂仗亠亠从仍ム舒亠仍亳損 弌仗亳从亳 仂仍 仂 仗亳从仂仄 丐亠从仂于亠 仗仂仍 舒仆亠仍亳 仗仂从从亳 舒仆亠仍亳 于从仍舒亟从舒仄亳 亠亠于 丐亠从仂于亠 仂弍仍舒亳 丐舒弍仍亳 仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆舒 从 从仂仆亠亶仆亠: Component add (Component c) 丕亟舒仍亠仆亳亠 从仂仄仗仂仆亠仆舒 亳亰 从仂仆亠亶仆亠舒: void remove (Component obj). 17
  • 18. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 弍亳弍仍亳仂亠从亠 Swing 从仂仄仗仂仆亠仆 仗亠亠亟 于于仂亟仂仄 仆舒 从舒仆 亟仂仍亢仆 弍 仗仂仄亠亠仆 仆亠 于 仂从仆仂, 舒 于仆 仗亠亳舒仍仆仂亞仂 从仂仆亠亶仆亠舒, 从仂仂亶 仆舒亰于舒亠 仗舒仆亠仍 仂亟亠亢舒仆亳 (content pane). 亅仂 从仂仆亠亶仆亠 仆亠 仆亢仆仂 仂亰亟舒于舒, 亠亞仂 仄仂亢仆仂 仗仂仍亳 亟仍 仂从仆舒 仗仂亟仂弍仆仂 亞舒亳亠从仂仄 从仂仆亠从: JFrame f = new JFrame("Test"); Container cp = f.getContentPane(); 仂仍亠 仂亞仂 于亠 仂仗亠舒亳亳 亟仂弍舒于仍亠仆亳/亟舒仍亠仆亳 从仂仄仗仂仆亠仆仂于 于仗仂仍仆ム 亟仍 仗舒仆亠仍亳 仂亟亠亢舒仆亳, 舒 仆亠 亟仍 舒仄仂亞仂 仂从仆舒. 18
  • 19. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 舒亳亠从亳亠 亳亰仂弍舒亢亠仆亳 仂仆从仂 从仍舒舒 ImageIcon: ImageIcon(String filename) 仆仂于仆亠 仄亠仂亟 从仍舒舒 ImageIcon: int getIconHeight() int getIconWidth() void paintIcon(Component comp, Graphics g, int x, int y) 19
  • 20. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 丐亠从仂于亠 仄亠从亳 JLabel (String str) JLabel (Icon id_icon) JLabel (String str, Icon id_icon, int align) JLabel.LEFT - 于舒于仆亳于舒仆亳亠 仗仂 仍亠于仂仄 从舒 JLabel.RIGHT - 于舒于仆亳于舒仆亳亠 仗仂 仗舒于仂仄 从舒 JLabel.CENTER - 于舒于仆亳于舒仆亳亠 仗仂 亠仆 void setText(String str) String getText( ) void setAlignment(int align) int getAlignment( ) void setIcon(Icon id_icon) Icon getIcon( ) 20
  • 21. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 丕仗舒于仍ム亳亠 从仆仂仗从亳 JButton(String str) JButton(Icon id_icon) 亠仂亟, 仗仂亰于仂仍ム亳亠 仗舒于仍 于亳亟仂仄 从仆仂仗从亳: String getLabel( ) void setLabel(String str) Icon getLabel( ) void setIcon(Icon id_icon) 21
  • 22. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 个仍舒亢从亳 - 仗亠亠从仍ム舒亠仍亳 JCheckBox (String str, Icon id_icon, boolean state) 丕仗舒于仍亠仆亳亠 仂仂礌亳亠仄 仍舒亢从舒 亳亰 仗仂亞舒仄仄 仂亠于仍磳 仗仂仄仂 仄亠仂亟仂于: boolean getSelected() void setSelected(boolean state) 22
  • 23. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 束舒亟亳仂-仗亠亠从仍ム舒亠仍亳損 JRadioButton (String str, Icon id_icon, boolean state) 束舒亟亳仂仗亠亠从仍ム舒亠仍亳損 亟仂仍亢仆 弍 仂弍亠亟亳仆亠仆 于 亞仗仗, 于 仗亠亟亠仍舒 从仂仂仂亶 弍亟亠 仂弍亠仗亠亳于舒 仆亳从舒仍仆仂 于弍仂舒 仍亠仄亠仆舒. 丼仂弍 仂亰亟舒 亞仗仗 仂亰亟舒亠 从亰亠仄仗仍 仂弍亠从舒 仗亠亳舒仍仆仂亞仂 从仍舒舒 ButtonGroup. 舒仍亠亠 于亠 仂亰亟舒仆仆亠 舒亟亳仂仗亠亠从仍ム舒亠仍亳 亟仂弍舒于仍ム 于 仂亰亟舒仆仆 亞仗仗 (仂 仆亠 仂仄亠仆磳 仆亠仂弍仂亟亳仄仂亳 亳 亟仂弍舒于仍亠仆亳 从 仗舒仆亠仍亳 仂亟亠亢舒仆亳). 23
  • 24. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 束舒亟亳仂-仗亠亠从仍ム舒亠仍亳損 JFrame f = new JFrame("RadioButton Example"); Container cp = f.getContentPane(); JRadioButton jrb1 = new JRadioButton("a",false); JRadioButton jrb2 = new JRadioButton("b",false); JRadioButton jrb3 = new JRadioButton("c",true); ButtonGroup bg = new ButtonGroup(); JButton jb = new JButton("OK"); bg.add(jrb1);bg.add(jrb2);bg.add(jrb3); cp.add(jrb1);cp.add(jrb2);cp.add(jrb3);cp.add(jb); f.setVisible(true); 24
  • 26. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 舒从于舒ム亳亠 仗亳从亳 JComboBox() JComboBox(Vector v[ ]) JComboBox(Object obj[ ]) 仂弍舒于仍亠仆亳亠 仍亠仄亠仆舒 于 仗亳仂从: addItem(Object item) 舒于从舒 仍亠仄亠仆舒 于 仗亳仂从: insertItemAt(Object anObject, int index) 丕亟舒仍亠仆亳亠 仍亠仄亠仆仂于 亳亰 仗亳从舒: void removeItem (String text) void removeItemAt (int index) void RemoveAllItems () 26
  • 27. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 舒从于舒ム亳亠 仗亳从亳 舒弍仂舒 于弍舒仆仆仄亳 仍亠仄亠仆舒仄亳: String getSelectedItem( ) void setSelectedItem (Object obj) int getSelectedIndex( ) void setSelectedIndex (int index) 丕舒仆仂于从舒 亠亢亳仄舒 亠亟舒从亳仂于舒仆亳: void setEditable (boolean state) 27
  • 28. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 弌仗亳从亳 JList(Vector v[ ]) JList(Object obj[ ]) 弍亠从 亳仗舒 JList 仆亠 仗仂亟亟亠亢亳于舒ム 舒于仂仄舒亳亠从 仗仂从从. 仂仂仄 亟仍 仂亞仂, 仂弍 仍亠仄亠仆 于 仗亳从亠 仄仂亞仍亳 仗仂从亳于舒, 仗亳仂从 仆亠仂弍仂亟亳仄仂 仗仂仄亠亳 于 仗亠亳舒仍仆亶 仂弍亠从 JScrollPane, 舒 亢亠 仂 仂弍亠从 亟仂弍舒于亳 于 从仂仆亠亶仆亠. 28
  • 29. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 弌仗亳从亳 JFrame f = new JFrame(); Container cp = f.getContentPane(); f.setBounds(100,100,300,300); String s[ ] = {"1","2","3","4","5","6","7","8","9","10"}; JList jl = new JList(s); jl.setBounds(10,10,30,30); JScrollPane p = new JScrollPane(jl); cp.add(p); f.setVisible(true); 29
  • 31. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 弌仗亳从亳 仍 仂仗亠亟亠仍亠仆亳 于弍舒仆仆仂亞仂 仍亠仄亠仆舒 (仍亠仄亠仆仂于) 亳仗仂仍亰ム 仄亠仂亟: Object getSelectedValue() Object[ ] getSelectedValues() int getSelectedIndex( ) int[ ] getSelectedIndices( ) 31
  • 32. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 JTextField( ) 丐亠从仂于亠 仗仂仍 JTextField(int numChars) JTextField(String str) JTextField(String str, int numChars) String getText() 仂亰于舒舒亠 仂从, 仂亟亠亢舒ム 于 仗仂仍亠 于于仂亟舒. void setText (String str) 丕舒仆舒于仍亳于舒亠 于 仗仂仍亠 于于仂亟舒 亠从 str. String getSelectedText() 仂亰于舒舒亠 于亟亠仍亠仆仆 舒 亠从舒. void select (int start, int end) 仂亞舒仄仄仆仂亠 于亟亠仍亠仆亳亠 舒亳 亠从舒 于 仗仂仍亠 于于仂亟舒 仆舒亳仆舒 仗仂亰亳亳亳 start 亟仂 仗仂亰亳亳亳 end. void setEchoChar(char ch) 仍 于于仂亟舒 仗舒仂仍亠亶 32
  • 33. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 JTextArea( ) 丐亠从仂于亠 仂弍仍舒亳 JTextArea(int numLines, int numChars) JTextArea(String str) JTextArea(String str, int numLines, int numChars) void append (String str) 弌仂从舒 str 亟仂弍舒于仍磳 从 从仂仆 亠从亠亞仂 亠从舒 void insert (String str, int index) 弌仂从舒 str 于舒于仍磳 于 仗仂亰亳亳, 从舒亰舒仆仆 于 仗舒舒仄亠亠 index. void replaceRange (String str, int start, int end) 舒仄亠仆磳 亳仄于仂仍 仂 start 亟仂 end-1 仂从仂亶 str. 仍 仂弍亠仗亠亠仆亳 仗仂从从亳 JTextField 亳 JTextArea 亟仂仍亢仆 弍 仗仂仄亠亠仆 于 从仂仆亠亶仆亠 JScrollPane. 33
  • 34. 舒亳亠从亳亶 从仂仆亠从. 亅仍亠仄亠仆 仗舒于仍亠仆亳 亞亳亠 仍亠仄亠仆 JTabbedPane 仗舒仆亠仍 仂 于从仍舒亟从舒仄亳 JTree 亟亠亠于 JTable 舒弍仍亳 JSplitPane 束舒亠仗仍亠仆仆亠損 仂从仆舒 J際際滷r 仗仂仍亰仆从仂于亶 亠亞仍仂 JProgressBar 亳仆亟亳从舒仂 仗仂亞亠舒 34
  • 35. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 舒亰仄亠亠仆亳亠 从仂仄仗仂仆亠仆仂于 于 仂从仆亠 仗仂仄仂 setBounds() 亳仄亠亠 仄仆仂亢亠于仂 仆亠亟仂舒从仂于: - 仆亠仂弍仂亟亳仄仂 于仆 舒亳于舒 从仂仂亟亳仆舒 - 仗亳 亳亰仄亠仆亠仆亳亳 舒亰仄亠仂于 仂从仆舒, 从仂仄仗仂仆亠仆 束仗仂仗仍于損 - 亠磳 从仂仗仍舒仂仄仆仂 仂仂仄 亠于ム 仄亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 亠亟于舒 舒于仂仄舒亳亠从仂亞仂 舒亰仄亠亠仆亳 从仂仄仗仂仆亠仆仂于 于 仂从仆亠 35
  • 37. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 FlowLayout FlowLayout 仄亠仆亠亟亢亠 仗仂仂仆仂亶 从仂仄仗仂仆仂于从亳. 仆 舒亰仄亠舒亠 从仂仄仗仂仆亠仆 于 仂从仆亠 仆舒亳仆舒 仂 仍亠于仂亞仂 于亠仆亠亞仂 亞仍舒 仍亠于舒 仆舒仗舒于仂 亳 于亠 于仆亳亰. 仂仆从仂: FlowLayout (int align, int h, int v) FlowLayout (int align) FlowLayout () 亠仂亟: void setAlignment (int align) void setHgap (int hgap) void setVgap (int vgap) 37
  • 38. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 FlowLayout f.setLayout(new FlowLayout()); JRadioButton jrb1 = new JRadioButton("a",false); JRadioButton jrb2 = new JRadioButton("b",false); JRadioButton jrb3 = new JRadioButton("c",true); JButton jb1 = new JButton ("Yes"); JButton jb2 = new JButton ("No"); JButton jb3 = new JButton ("Cancel"); ButtonGroup bg = new ButtonGroup(); bg.add(jrb1); bg.add(jrb2); bg.add(jrb3); cp.add(jb1);cp.add(jb2);cp.add(jb3);cp.add(jrb1);cp.add(jrb2); cp.add(jrb3);f.setVisible(true); 38
  • 41. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 BorderLayout 仂弍舒于仍 从仂仄仗仂仆亠仆 于 仂仄 仍舒亠 仄仂亢仆仂 仗仂仄仂 仗亠亳舒仍仆仂亶 仂仄 仄亠仂亟舒 add(): void add (Component comp, Object region) 亞亟亠 仗舒舒仄亠 region 亟仂仍亢亠仆 仗亳仆亳仄舒 仂亟仆仂 亳亰 仍亠亟ム亳 亰仆舒亠仆亳亶: BorderLayout.NORTH BorderLayout.SOUTH BorderLayout.EAST BorderLayout.WEST BorderLayout.CENTER 41
  • 42. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 BorderLayout JFrame f = new JFrame(); Container cp = f.getContentPane(); // 弌仂亰亟舒亠仄 仗舒仆亠仍 2 亠仄 从仆仂仗从舒仄亳 Panel p2 = new Panel(); p2.add(new JButton(仗仂仍仆亳)); p2.add(new JButton(仄亠仆亳")) ; p2.add(new JButton(亶亳")); // 弌仂亰亟舒亠仄 仗舒仆亠仍 p1 亳 舒仆舒于仍亳于舒亠仄 亟仍 仆亠亠 从仂仄仗仂仆仂于从 BorderLayout Panel p1 = new Panel(); p1.setLayout(new BorderLayout()); 42
  • 43. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 BorderLayout p1.add (p2, BorderLayout.SOUTH); p1.add(new TextField(束仂仍亠 于于仂亟舒損, 20), BorderLayout.NORTH); p1.add(new TextArea (束弍仍舒 于于仂亟舒損, 5, 20, TextArea.SCROLLBARS_NONE), BorderLayout.CENTER); cp.add (new Scrollbar (Scrollbar. HORIZONTAL), BorderLayout.SOUTH); cp.add(new Scrollbar(Scrollbar.VERTICAL), BorderLayout.EAST) ; cp.add(p1, BorderLayout.CENTER) ; f.setVisible(true); 43
  • 45. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 GridLayout 亠仆亠亟亢亠 GridLayout 舒亰仄亠舒亠 从仂仄仗仂仆亠仆 于 亟于仄亠仆仂亶 亠从亠 (亳仆仂亞亟舒 舒从仂亠 舒亰仄亠亠仆亳亠 仆舒亰于舒ム 舒弍仍亳仆仄). 丼亳仍仂 仂从 亳 仂仍弍仂于 亠从亳 仍亠亟亠 亰舒亟舒于舒 仗亳 仂亰亟舒仆亳亳 从亰亠仄仗仍舒 仂弍亠从舒 GridLayout. 仂仄仗仂仆亠仆 舒亰仄亠舒ム 仍亠于舒 仆舒仗舒于仂 仗仂 仂从舒仄 仂亰亟舒仆仆仂亶 舒弍仍亳 于 仂仄 仗仂磲从亠, 于 从仂仂仂仄 仂仆亳 亰舒亟舒仆 仄亠仂亟仂仄 add(). 仂仆从仂, 仂仗亠亟亠仍亠仆仆亠 于 从仍舒亠 GridLayout: GridLayout() GridLayout(int numRows, int numColumns) GridLayout(int numRows, int numColumns, int horz, int vert) 45
  • 46. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 GridLayout 仆亳仄舒仆亳亠! 仍亳 亳仍仂 从仂仄仗仂仆亠仆仂于 > 亳仍舒 从仍亠仂从, 仂: - 亠仍亳 numRows != 0 & numColumns !=0 -> numColumns 亳亞仆仂亳亠 亳 亳仍仂 仂仍弍仂于 舒仆舒于仍亳于舒亠 舒从, 仂弍 仄亠亳仍亳 于亠 从仂仄仗仂仆亠仆 - 亠仍亳 numRows == 0 -> 亳仍仂 仂从 舒仆舒于仍亳于舒亠 舒从, 仂弍 仄亠亳仍亳 于亠 从仂仄仗仂仆亠仆 46
  • 47. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 GridLayout JFrame f = new JFrame(); Container cp = f.getContentPane(); f.setLayout(new GridLayout(3, 2)); f.add(new JButton("1")); f.add(new JButton("2")); f.add(new JButton("3")); f.add(new JButton("4")); f.add(new JButton("5")); f.add(new JButton("6")); f.add(new JButton("7")); f.add(new JButton("8")); f.add(new JButton("9")); f.setVisible(true); 47
  • 49. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 CardLayout 亠仆亠亟亢亠 CardLayout 仗仂从舒亰于舒亠 于 从仂仆亠亶仆亠亠 仂仍从仂 仗亠于亶 从仂仄仗仂仆亠仆. 舒仍仆亠 从仂仄仗仂仆亠仆 仍亠亢舒 仗仂亟 仗亠于仄 于 仂仗亠亟亠仍亠仆仆仂仄 仗仂磲从亠 从舒从 亳亞舒仍仆亠 从舒 于 从仂仍仂亟亠. 舒仗仂仍仂亢亠仆亳亠 仂仗亠亟亠仍磳 仗仂磲从仂仄 于亰仂于舒 仄亠仂亟仂于 add(). c仍亠亟ム亳亶 从仂仄仗仂仆亠仆 next(Container c) 仗亠亟亟亳亶 previous(Container c) 仗亠于亶 first(Container c) 仗仂仍亠亟仆亳亶 last(Container c) 亞仄亠仆 亳 仄亠仂亟仂于 仍从舒 仆舒 从仂仆亠亶仆亠, 于 从仂仂亶 仗仂仄亠亠仆 从仂仄仗仂仆亠仆, 仂弍仆仂 this. 49
  • 50. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 CardLayout 仂仆从仂: CardLayout() 仆亠 仂亟亠仍磳 从仂仄仗仂仆亠仆 仂 亞舒仆亳 从仂仆亠亶仆亠舒 CardLayout(int hgap, int vgap) 亰舒亟舒亠 亞仂亳亰仂仆舒仍仆亠 亳 于亠亳从舒仍仆亠 仗仂仄亠亢从亳 仄亠亢亟 从仂仄仗仂仆亠仆仂仄 亳 亞舒仆亳舒仄亳 从仂仆亠亶仆亠舒. CardLayout 仗仂亰于仂仍磳 仂亞舒仆亳亰仂于舒 亳 仗仂亳亰于仂仍仆亶 亟仂仗 从 从仂仄仗仂仆亠仆舒仄. 亠仂亟 add() 亟仍 仂亞仂 仄亠仆亠亟亢亠舒 亳仄亠亠 于亳亟 add(Component comp, Object name) 仂从舒亰舒 仆亢仆亶 从仂仄仗仂仆亠仆 亳仄亠仆亠仄 name 仄仂亢仆仂 仗仂仄仂 仄亠仂亟舒 show(Container parent, String name) 50
  • 51. 亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 CardLayout Panel p = new Panel(); CardLayout c = new CardLayout(); p.setLayout(c); Panel p1 = new Panel(); Panel p2 = new Panel(); Panel p3 = new Panel(); p.add(p1,"1"); p.add(p2,"2"); p.add(p3,"3"); c.next(p); 51
  • 52. VE Visual Editor 舒亰舒弍仂从舒 GUI c 仗仂仄仂 于亳亰舒仍仆仂亞仂 亠亟舒从仂舒 VE Visual Editor. 仍舒亞亳仆 亟仍 亠亟 舒亰舒弍仂从亳 Eclipse IDE. 仂亰于仂仍磳 舒弍仂舒 亞舒亳亠从亳仄亳 弍亳弍仍亳仂亠从舒仄亳 Java Swing 亳 Java AWT. 丕仗仂舒亠 舒弍仂 从仂仄仗仂仆亠仆舒仄亳 仂亟亟亠亢亳于舒亠 仄亠仆亠亟亢亠 从仂仄仗仂仆仂于从亳 于仂仄舒亳亠从仂亠 亟仂弍舒于仍亠仆亳亠 仂弍舒弍仂亳从仂于 (仍舒亠仍亠亶) 仂弍亳亶. 52
  • 53. VE Visual Editor 丕舒仆仂于从舒 舒亶亳 于 Eclipse Help->Install New Software. 舒亢舒 从仆仂仗从 Add 亳 从舒亰舒 仗 http://visualeditor.sourceforge.net/updates/1.5.0 53
  • 54. 54
  • 55. 55
  • 56. VE Visual Editor 丐亳 仗亠亟舒于仍亠仆亳 Design 从舒从 弍亟亠 于亞仍磲亠 仂从仆仂 Source - 亳仂亟仆亶 从仂亟 Palette - 仗舒仍亳舒 亞舒亳亠从亳 仍亠仄亠仆仂于 Properties 仗仂仄仂 亳 舒仆仂于从舒 于仂亶于 从仂仄仗仂仆亠仆舒. Java Beans 亟亠亠于仂 于仍仂亢亠仆仆仂亳 从仂仄仗仂仆亠仆仂于 56
  • 58. Visual Editor. 丐亳仗仂于亠 仂仗亠舒亳亳. 从 从仍舒 于 亠亟舒从仂亠 丼仂弍 仂从 亠于ム亳亶 从仍舒 于 于亳亰舒仍仆仂仄 亠亟舒从仂亠: Package Explorer - 于弍亠亳亠 亳仂亟仆亶 舒亶仍 .java Open With > Visual Editor 亳亰 于仗舒亟舒ム亠亞仂 仄亠仆. 弌仂亰亟舒仆亳亠 仆仂于仂亞仂 于亳亰舒仍仆仂亞仂 从仍舒舒 File -> New -> Visual Class Name - 亳仄 从仍舒舒 Style 于弍舒 仂亟亳亠仍从亳亶 从仍舒: JFrame Japplet .. 58
  • 59. 59
  • 60. 仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆仂于 亳 亳亰仄亠仆亠仆亳亠 亳 于仂亶于 仂弍舒于仍亠仆亳亠 从仂仄仗仂仆亠仆仂于 仗亠仄 仗亠亠舒从亳于舒仆亳 仗舒仆亠仍亳 亰仄亠仆亠仆亳亠 Layout Manager 于 从仂仆亠从仆仂仄 仄亠仆 仗舒仆亠仍亳 仂从仆舒 亳仍亳 舒仗仗仍亠舒 Customize Layout 亳仍亳 Set Layout 丕弍舒 仄亠仆亠亟亢亠 从仂仄仗仂仆亠仆仂于 setLayoutManager(null) 于 从仂亟亠 仂仄 仍舒亠 仄仂亢仆仂 亳亰仄亠仆 舒亰仄亠亠仆亳亠 亳 舒亰仄亠 从仂仄仗仂仆亠仆仂于 于仆 60