Java2实用教程(第二版)程序代码——第二十二章 Java 与图像
1//例子1
2import java.applet.*;
3import java.awt.*;
4public class Example22_1 extends Applet
5{ Image img;
6 public void start()
7 { img=getImage(getCodeBase(),"vintdev.jpg");
8 }
9 public void paint(Graphics g)
10 { g.drawImage(img,2,2,this);
11 }
12}
13
14//例子2
15import java.applet.*;import java.awt.*;
16public class Example22_2 extends Applet
17{ Image img;int height,width;
18 public void start()
19 { img=getImage(getCodeBase(),"vintdev.jpg");
20 height=img.getHeight(this);width=img.getWidth(this);
21 }
22 public void paint(Graphics g)
23 { g.drawImage(img,22,72,width,height,this);
24 g.drawImage(img,2+width,2+height,width,height,this);
25 }
26}
27
28//例子3
29import java.applet.*;import java.awt.*;
30public class Wuqiong extends Applet
31{ static Image img; Canvas canvas; static int width,height;
32 public void init()
33 { setLayout(new GridLayout(3,1));add(new Button("祝好"));
34 add(new Button("进步"));
35 canvas=new Mycanvas(); add(canvas);
36 width=getSize().width;height=getSize().height;
37 }
38 public void start()
39 { img=getImage(getCodeBase(),"Tom1.jpg");
40 }
41}
42class Mycanvas extends Canvas
43{ public void paint(Graphics g)
44 { g.drawImage(Wuqiong.img,0,0,Wuqiong.width,(Wuqiong.height)/3,this);
45 }
46}
47
48//例子4
49import java.applet.*;import java.awt.*;import java.awt.event.*;
50public class Example22_4 extends Applet implements MouseListener
51{ final int number=38; int count=0;
52 Image[] card=new Image[number];
53 public void init()
54 { addMouseListener(this);
55 for(int i=0;i<number;i++)
56 { card[i]=getImage(getCodeBase(),"jiafei"+i+".jpg");
57 }
58 }
59 public void paint(Graphics g)
60 { if((card[count])!=null)
61 g.drawImage(card[count],10,10,
62 card[count].getWidth(this),card[count].getHeight(this),this);
63 }
64 public void mousePressed(MouseEvent e)
65 { count++;
66 if(count>number)
67 count=0;
68 repaint();
69 }
70 public void mouseReleased(MouseEvent e){}
71 public void mouseEntered(MouseEvent e){}
72 public void mouseExited(MouseEvent e){}
73 public void mouseClicked(MouseEvent e){}
74}
75
76//例子5
77import java.applet.*;import java.awt.*;import java.awt.event.*;
78public class Example22_5 extends Applet implements Runnable
79{ final int number=59; int count=0;
80 Thread mythread;
81 Image[] pic=new Image[number];
82 public void init()
83 { for(int i=0;i<number;i++)
84 { pic[i]=getImage(getCodeBase(),"tom"+i+".jpg");
85 }
86 }
87 public void start()
88 { mythread=new Thread(this);
89 mythread.start();
90 }
91 public void stop()
92 { mythread=null;
93 }
94 public void run()
95 { while(true)
96 { if(count>59)
97 count=0;
98 repaint();
99 count++;
100 try{ mythread.sleep(200);
101 }
102 catch(InterruptedException e){}
103 }
104 }
105 public void paint(Graphics g)
106 { if((pic[count])!=null)
107 g.drawImage(pic[count],10,10,
108 pic[count].getWidth(this),pic[count].getHeight(this),this);
109 }
110}
111
112//例子6
113import java.applet.*;import java.awt.*;
114import java.awt.event.*;
115class Imagecanvas extends Canvas
116{ Toolkit tool; Image myimage;
117 Imagecanvas()
118 { setSize(200,200);
119 tool=getToolkit();//得到一个Toolkit对象。
120 myimage=tool.getImage("apple.jpg");//由tool负责获取图像。
121 }
122 public void paint(Graphics g)
123 {
124 g.drawImage(myimage,10,10,myimage.getWidth(this),myimage.getHeight(this),this);
125 }
126}
127public class Example22_6
128{ public static void main(String args[])
129 {Imagecanvas canvas=new Imagecanvas();
130 Frame frame=new Frame();
131 frame.setLayout(new BorderLayout());
132 frame.add(canvas,"Center"); frame.add("South",new Label());
133 frame.add("West",new Label()); frame.add("North",new Label());
134 frame.setSize(400,300);frame.setVisible(true);
135 frame.pack();
136 frame.addWindowListener(new WindowAdapter()
137 {public void windowClosing(WindowEvent e)
138 {System.exit(0);}
139 });
140 }
141}
142
143//例子7
144import java.applet.*;import java.awt.*;
145import java.awt.event.*;
146class Imagecanvas extends Canvas implements MouseListener
147{final int number=59; int count=0; Toolkit tool;
148 Image[] card=new Image[number];
149 Imagecanvas()
150 { getSize(); tool=getToolkit(); addMouseListener(this);
151 for(int i=0;i<number;i++)
152 {card[i]=tool.getImage("tom"+i+".jpg");
153 }
154 }
155 public void paint(Graphics g)
156{if((card[count])!=null)
157 g.drawImage(card[count],10,10,
158 card[count].getWidth(this),card[count].getHeight(this),this);
159 }
160 public Dimension getPreferredSize()
161 {return new Dimension(160,100);
162 }
163 public void mousePressed(MouseEvent e)
164 { count++;
165 if(count>number-1)
166 count=0;
167 repaint();
168 }
169 public void mouseReleased(MouseEvent e){}
170 public void mouseEntered(MouseEvent e){}
171 public void mouseExited(MouseEvent e){}
172 public void mouseClicked(MouseEvent e){}
173}
174public class Example226
175{ public static void main(String args[])
176 {Imagecanvas canvas=new Imagecanvas();
177 Frame frame=new Frame(); frame.setLayout(new BorderLayout());
178 frame.add(canvas,"Center");
179 frame.add("South",new Label());frame.add("West",new Label());
180 frame.add("North",new Label());
181 frame.setSize(400,300);frame.setVisible(true); frame.pack();
182 frame.addWindowListener(new WindowAdapter()
183 {public void windowClosing(WindowEvent e)
184 {System.exit(0);}
185 });
186 }
187}
188
189//例子8
190import java.awt.*;import java.awt.event.*;
191public class Frame_Icon
192{ public static void main(String args[])
193 { Frame frame=new Frame();
194 Toolkit tool= frame.getToolkit();//得到一个Toolkit对象。
195 Image myimage=tool.getImage("apple.jpg");//由tool负责获取图像。
196 //设置窗口的图标是myimage指定的图象apple.jpg:
197 frame.setIconImage(myimage);
198 frame.setSize(400,300);frame.setVisible(true);
199 frame.addWindowListener(new WindowAdapter()
200 {public void windowClosing(WindowEvent e)
201 { System.exit(0);
202 }
203 });
204 }
205}
206
2import java.applet.*;
3import java.awt.*;
4public class Example22_1 extends Applet
5{ Image img;
6 public void start()
7 { img=getImage(getCodeBase(),"vintdev.jpg");
8 }
9 public void paint(Graphics g)
10 { g.drawImage(img,2,2,this);
11 }
12}
13
14//例子2
15import java.applet.*;import java.awt.*;
16public class Example22_2 extends Applet
17{ Image img;int height,width;
18 public void start()
19 { img=getImage(getCodeBase(),"vintdev.jpg");
20 height=img.getHeight(this);width=img.getWidth(this);
21 }
22 public void paint(Graphics g)
23 { g.drawImage(img,22,72,width,height,this);
24 g.drawImage(img,2+width,2+height,width,height,this);
25 }
26}
27
28//例子3
29import java.applet.*;import java.awt.*;
30public class Wuqiong extends Applet
31{ static Image img; Canvas canvas; static int width,height;
32 public void init()
33 { setLayout(new GridLayout(3,1));add(new Button("祝好"));
34 add(new Button("进步"));
35 canvas=new Mycanvas(); add(canvas);
36 width=getSize().width;height=getSize().height;
37 }
38 public void start()
39 { img=getImage(getCodeBase(),"Tom1.jpg");
40 }
41}
42class Mycanvas extends Canvas
43{ public void paint(Graphics g)
44 { g.drawImage(Wuqiong.img,0,0,Wuqiong.width,(Wuqiong.height)/3,this);
45 }
46}
47
48//例子4
49import java.applet.*;import java.awt.*;import java.awt.event.*;
50public class Example22_4 extends Applet implements MouseListener
51{ final int number=38; int count=0;
52 Image[] card=new Image[number];
53 public void init()
54 { addMouseListener(this);
55 for(int i=0;i<number;i++)
56 { card[i]=getImage(getCodeBase(),"jiafei"+i+".jpg");
57 }
58 }
59 public void paint(Graphics g)
60 { if((card[count])!=null)
61 g.drawImage(card[count],10,10,
62 card[count].getWidth(this),card[count].getHeight(this),this);
63 }
64 public void mousePressed(MouseEvent e)
65 { count++;
66 if(count>number)
67 count=0;
68 repaint();
69 }
70 public void mouseReleased(MouseEvent e){}
71 public void mouseEntered(MouseEvent e){}
72 public void mouseExited(MouseEvent e){}
73 public void mouseClicked(MouseEvent e){}
74}
75
76//例子5
77import java.applet.*;import java.awt.*;import java.awt.event.*;
78public class Example22_5 extends Applet implements Runnable
79{ final int number=59; int count=0;
80 Thread mythread;
81 Image[] pic=new Image[number];
82 public void init()
83 { for(int i=0;i<number;i++)
84 { pic[i]=getImage(getCodeBase(),"tom"+i+".jpg");
85 }
86 }
87 public void start()
88 { mythread=new Thread(this);
89 mythread.start();
90 }
91 public void stop()
92 { mythread=null;
93 }
94 public void run()
95 { while(true)
96 { if(count>59)
97 count=0;
98 repaint();
99 count++;
100 try{ mythread.sleep(200);
101 }
102 catch(InterruptedException e){}
103 }
104 }
105 public void paint(Graphics g)
106 { if((pic[count])!=null)
107 g.drawImage(pic[count],10,10,
108 pic[count].getWidth(this),pic[count].getHeight(this),this);
109 }
110}
111
112//例子6
113import java.applet.*;import java.awt.*;
114import java.awt.event.*;
115class Imagecanvas extends Canvas
116{ Toolkit tool; Image myimage;
117 Imagecanvas()
118 { setSize(200,200);
119 tool=getToolkit();//得到一个Toolkit对象。
120 myimage=tool.getImage("apple.jpg");//由tool负责获取图像。
121 }
122 public void paint(Graphics g)
123 {
124 g.drawImage(myimage,10,10,myimage.getWidth(this),myimage.getHeight(this),this);
125 }
126}
127public class Example22_6
128{ public static void main(String args[])
129 {Imagecanvas canvas=new Imagecanvas();
130 Frame frame=new Frame();
131 frame.setLayout(new BorderLayout());
132 frame.add(canvas,"Center"); frame.add("South",new Label());
133 frame.add("West",new Label()); frame.add("North",new Label());
134 frame.setSize(400,300);frame.setVisible(true);
135 frame.pack();
136 frame.addWindowListener(new WindowAdapter()
137 {public void windowClosing(WindowEvent e)
138 {System.exit(0);}
139 });
140 }
141}
142
143//例子7
144import java.applet.*;import java.awt.*;
145import java.awt.event.*;
146class Imagecanvas extends Canvas implements MouseListener
147{final int number=59; int count=0; Toolkit tool;
148 Image[] card=new Image[number];
149 Imagecanvas()
150 { getSize(); tool=getToolkit(); addMouseListener(this);
151 for(int i=0;i<number;i++)
152 {card[i]=tool.getImage("tom"+i+".jpg");
153 }
154 }
155 public void paint(Graphics g)
156{if((card[count])!=null)
157 g.drawImage(card[count],10,10,
158 card[count].getWidth(this),card[count].getHeight(this),this);
159 }
160 public Dimension getPreferredSize()
161 {return new Dimension(160,100);
162 }
163 public void mousePressed(MouseEvent e)
164 { count++;
165 if(count>number-1)
166 count=0;
167 repaint();
168 }
169 public void mouseReleased(MouseEvent e){}
170 public void mouseEntered(MouseEvent e){}
171 public void mouseExited(MouseEvent e){}
172 public void mouseClicked(MouseEvent e){}
173}
174public class Example226
175{ public static void main(String args[])
176 {Imagecanvas canvas=new Imagecanvas();
177 Frame frame=new Frame(); frame.setLayout(new BorderLayout());
178 frame.add(canvas,"Center");
179 frame.add("South",new Label());frame.add("West",new Label());
180 frame.add("North",new Label());
181 frame.setSize(400,300);frame.setVisible(true); frame.pack();
182 frame.addWindowListener(new WindowAdapter()
183 {public void windowClosing(WindowEvent e)
184 {System.exit(0);}
185 });
186 }
187}
188
189//例子8
190import java.awt.*;import java.awt.event.*;
191public class Frame_Icon
192{ public static void main(String args[])
193 { Frame frame=new Frame();
194 Toolkit tool= frame.getToolkit();//得到一个Toolkit对象。
195 Image myimage=tool.getImage("apple.jpg");//由tool负责获取图像。
196 //设置窗口的图标是myimage指定的图象apple.jpg:
197 frame.setIconImage(myimage);
198 frame.setSize(400,300);frame.setVisible(true);
199 frame.addWindowListener(new WindowAdapter()
200 {public void windowClosing(WindowEvent e)
201 { System.exit(0);
202 }
203 });
204 }
205}
206