页面切换时,applet上的图为什么不见了? 我的解决办法 public void update(Graphics g) { paint(g); }在paint中从头画到当前计数器, 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 leitz: 没看明白,可具体点?Thx! 先将以有的Img放在hashtable,当切换页面时,再重新将hashtable的Img画一遍,sun公司都是这么做的 import java.awt.*; import java.applet.*; public class carton extends Applet implements Runnable{ Image img,bimg; Thread thd; int i ; String namestr[] = new String[5] ; int l; int k; boolean b; public void init(){ i=-1; l=-100; thd=null; b=true; for (int j=0; j<5; j++) { namestr[j] ="./image/"+String.valueOf(j+1)+".gif" ; } } public void run(){ while (b){ try { i=i+1; l=l+100; if(i==4)b=false; //if(i==5){i=0;l=0;} k=i; repaint(0,0,500,500); Thread.sleep(1000); } catch (Exception e){System.out.println(e.toString());} } } public synchronized void paint(Graphics g) { img = getImage(getDocumentBase(),namestr[k]); bimg= createImage(500,500); Graphics bg=bimg.getGraphics(); bg.drawString("aaa",l+30,l+30); bg.drawImage(img,10,10,this); super.paint(bg); g.drawImage(bimg,l,l,null); System.out.println("aaa"+k); bg.dispose(); } public void update(Graphics g){ paint(g); } public void start() { if (thd == null) { thd = new Thread(this); thd.start(); } } public void stop() { thd = null; }}运行的结果:aaa0aaa0aaa0aaa1aaa1aaa1aaa1aaa2aaa2aaa3aaa3aaa3aaa4aaa4aaa4aaa4aaa4aaa4aaa4aaa4aaa4aaa4aaa4aaa4实际的结果应该是:aaa0aaa1aaa2aaa3怎么会出现这种情况呢? list里存放的是什么? 新手请教问题,编译结果出问题,本人对异常还不太了解,所在这里问下大家,给点指导 关于java api.。。。。。。。。。。。。 关于接口的问题 编程题 已经一个object中有一个名为getXXX的函数,如何执行这个函数? 关于多线程的notifyall()函数求教高手 为什么在编译器找不到同一个目录下定义的类?? 请问session bean和实体bean的区别 求W.Richard Stevens的电子书!!! java 实例的内存分配 请问如何在Java中访问Mysql数据库_____一段小程序
没看明白,可具体点?Thx!
sun公司都是这么做的
import java.applet.*;
public class carton extends Applet implements Runnable{
Image img,bimg;
Thread thd;
int i ;
String namestr[] = new String[5] ;
int l;
int k;
boolean b;
public void init(){
i=-1;
l=-100;
thd=null;
b=true;
for (int j=0; j<5; j++) {
namestr[j] ="./image/"+String.valueOf(j+1)+".gif" ;
}
} public void run(){
while (b){
try {
i=i+1;
l=l+100;
if(i==4)b=false; //if(i==5){i=0;l=0;}
k=i;
repaint(0,0,500,500);
Thread.sleep(1000);
}
catch (Exception e){System.out.println(e.toString());}
}
} public synchronized void paint(Graphics g) {
img = getImage(getDocumentBase(),namestr[k]);
bimg= createImage(500,500);
Graphics bg=bimg.getGraphics();
bg.drawString("aaa",l+30,l+30);
bg.drawImage(img,10,10,this);
super.paint(bg);
g.drawImage(bimg,l,l,null);
System.out.println("aaa"+k);
bg.dispose();
}
public void update(Graphics g){
paint(g);
}
public void start() {
if (thd == null) {
thd = new Thread(this);
thd.start();
}
} public void stop() {
thd = null;
}
}运行的结果:
aaa0
aaa0
aaa0
aaa1
aaa1
aaa1
aaa1
aaa2
aaa2
aaa3
aaa3
aaa3
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
aaa4
实际的结果应该是:
aaa0
aaa1
aaa2
aaa3怎么会出现这种情况呢?