java – 如何在Applet中显示图像?
作者:互联网
我有一个图像,我想在小程序中显示它,问题是图像不会显示.我的代码有问题吗?
谢谢…
这是我的代码:
import java.applet.Applet;
import java.awt.*;
public class LastAirBender extends Applet
{
Image aang;
public void init()
{
aang = getImage(getDocumentBase(), getParameter("images.jpg"));
}
public void paint(Graphics g)
{
g.drawImage(aang, 100, 100, this);
}
}
解决方法:
aang = getImage(getDocumentBase(), getParameter("images.jpg"));
我怀疑你做错了什么,这应该是简单的:
aang = getImage(getDocumentBase(), "images.jpg");
HTML / applet元素的内容是什么?图像的名称是什么?图像与HTML在同一目录中吗?
更新1
第二行(已更改)代码将尝试将images.jpg文件加载到与HTML相同的目录中.
当然,您可能需要添加MediaTracker来跟踪图像的加载,因为Applet.getImage()方法立即(现在)返回,但是异步加载(稍后).
更新2
试试这个确切的实验:
将此源保存为${path.to.current.code.and.image} /FirstAirBender.java.
/*
<applet class='FirstAirBender' width=400 height=400>
</applet>
*/
import javax.swing.*;
import java.awt.*;
import java.net.URL;
import javax.imageio.ImageIO;
public class FirstAirBender extends JApplet {
Image aang;
public void init() {
try {
URL pic = new URL(getDocumentBase(), "images.jpg");
aang = ImageIO.read(pic);
} catch(Exception e) {
// tell us if anything goes wrong!
e.printStackTrace();
}
}
public void paint(Graphics g) {
super.paint(g);
if (aang!=null) {
g.drawImage(aang, 100, 100, this);
}
}
}
然后转到提示并编译代码,然后使用源名称作为参数调用applet viewer.
C:\Path>javac FirstAirBender.java
C:\Path>appletviewer FirstAirBender.java
C:\Path>
您应该在小程序中看到您的图像,从左上角以100×100绘制.
标签:japplet,java,intellij-idea,image 来源: https://codeday.me/bug/20191005/1854988.html