APPLET中绘制图片的问题 请问APPLET中能装载多少个IMAGE对象,为什么我装载了三个IMAGE,img1,img2,img3,只能绘制出前两个,而且我的里面有线程控制重绘,我的那前两个IMAGE对象要等够1分钟才能出来,这又是什么问题,有什么解决办法吗?急需解决,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public class Photo extends Applet implements Runnable { public void init() { img1 = getImage(getCodeBase(), "1.gif"); img1 = img1.getScaledInstance(30, 30, Image.SCALE_FAST); img2 = getImage(getCodeBase(), "2.gif"); img2 = img2.getScaledInstance(30, 30, Image.SCALE_FAST); img3 = getImage(getCodeBase(), "3.gif"); img3 = img3.getScaledInstance(50, 50, Image.SCALE_FAST); Thread t = new Thread(this); t.start(); } public void paint(Graphics g) { g.drawImage(img1, 100, 100,this); g.drawImage(img2, 200, 200, this); g.drawImage(img3, 300,300, this); } public void run() { while (true) { try { repaint(); // paintComponent(this.getGraphics()); Thread.sleep(1500); } catch (InterruptedException ex) { ex.printStackTrace(); } } }} Applet能装多少图象,这个问题问的不好,如果你的Applet设置够大,图象不是很大,就能显示好几个,反之亦然,你出现的问题是因为你程序的缘故,不知道你有没有仔细分析一下你的程序,首先,在你加载图象的时候,你没有使用多线程,而是三个图象同时加载成为一个线程,这样当你的线程在运行的时候可能发生的情况就很多了,也许图象只加载了一半,系统就剥夺了这个线程的使用权,这样就显示不出三副图了,不知道你赞成不?看看相关方面的书吧,会有你满意的答案 我的整个程序在JPANEL里运行很正常啊。。就是放到APPLET里面出现了这种问题。。 自己解决了,不用getImage(getCodeBase(), "*.gif"); 改为Toolkit.getDefaultToolkit().getImage( "*.gif");所有的图片就都能绘出来了,而且也不会等1分钟才绘出来。 书上练习 04-18 紧急求助:java网络通信问题 java输出指定个数的个空格 如何用JAVA代码生成一个类? 我想实现java连接数据库并且可以执行sql代码,怎么操作呢? 那位高手知道 jfreechart 鼠标触发事件的用法 正则表达式怎么匹配这样的[.*]{0, 1} 初学jsp,一个html调用一个jsp,这个jsp调用一个javaBean,已编译成类,最后如何部署(用j2sdkee)? 一个有私有构造方法的类为什么不可以被extends? 应该怎么发布这个可爱的Applet? 为什么jBuilder有时会自动关闭?大哥们帮帮我呀~~~~ 文件上传下载问题,请看代码.
public void init() {
img1 = getImage(getCodeBase(), "1.gif");
img1 = img1.getScaledInstance(30, 30, Image.SCALE_FAST);
img2 = getImage(getCodeBase(), "2.gif");
img2 = img2.getScaledInstance(30, 30, Image.SCALE_FAST);
img3 = getImage(getCodeBase(), "3.gif");
img3 = img3.getScaledInstance(50, 50, Image.SCALE_FAST);
Thread t = new Thread(this);
t.start();
}
public void paint(Graphics g) {
g.drawImage(img1, 100, 100,this);
g.drawImage(img2, 200, 200, this);
g.drawImage(img3, 300,300, this);
}
public void run() {
while (true) {
try {
repaint();
// paintComponent(this.getGraphics());
Thread.sleep(1500);
} catch (InterruptedException ex) {
ex.printStackTrace();
}
}
}
}