图像不会出现在我的Java小程序 [英] images do not appear on my java applet
问题描述
嘿,我试图创建一个视频游戏,我测试,看看我是否可以做一个精灵或图像上出现的小程序,我问之前,我的同事和教授的帮助,但他们不似乎帮助。我不知道如果我在错误的位置,或者,如果我的code被窃听有图像,但我会AP preciate如果有人在这谢谢了一下!哦!顺便说一句,我在编写Java和我使用Eclipse JUNO。
在此输入code包MEH;
进口java.awt中的*。
进口javax.swing.JApplet中;
进口javax.swing.ImageIcon中;
公共类抽奖扩展JApplet的{
公共静态无效的主要(字串[] args)
{
绘制测试=新绘图();
}
私人形象exImage;
私人布尔imagesLoaded; 公共无效的run()
{ imagesLoaded = FALSE; 尝试
{
loadImages();
尝试
{
视频下载(10000); }
赶上(InterruptedException的前){}
}
最后{}
}
公共无效loadImages()
{
exImage =的LoadImage(C:/用户/温度/工作区/从零开始/斌/ Ma_rn_0);
imagesLoaded = TRUE;
重绘();
}
私人形象的LoadImage(字符串文件名)
{
返回新的ImageIcon(文件名).getImage();
}
公共无效漆(图形G)
{
如果(G的instanceof的Graphics2D)
{
Graphics2D的G2 =(Graphics2D的)克;
g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
}
如果(imagesLoaded)
{
的drawImage(克,exImage,0,0,NULL);
}
其他
{
g.drawString(载入中...,5,12);
}
} 公共无效的drawImage(图形克,图片形象,诠释的x,INT Y,串标题)
{
g.drawImage(图像,X,Y,NULL);
g.drawString(标题,X + 5,Y + 12 + image.getHeight(NULL));
}}
除非他们签署,小应用程序只能从它们的源是同一个位置加载图像。在这里,你正试图从本地磁盘加载图像。对于小应用程序资源的所有初始化应该从的init
方法来实现。图片可从它们部署在同一个JAR文件被加载为资源。你可以做
图像exImage = ImageIO.read(的getClass()。的getResourceAsStream(图像/ myImage.jpg这个参数))
Hey I'm trying to create a video game and I'm testing to see if I can make a sprite or image appear on the applet I've asked for help before from my peers and professor, but they don't seem to help. I don't know if I have the image in the wrong location or if my code is bugged, but I would appreciate if someone took a look at it Thanks! Oh! by the way I'm programming in Java and I'm using Eclipse JUNO.
enter code here
package meh;
import java.awt.*;
import javax.swing.JApplet;
import javax.swing.ImageIcon;
public class Draw extends JApplet{
public static void main(String[] args)
{
Draw test = new Draw();
}
private Image exImage;
private boolean imagesLoaded;
public void run()
{
imagesLoaded = false;
try
{
loadImages();
try
{
Thread.sleep(10000);
}
catch(InterruptedException ex){}
}
finally{}
}
public void loadImages()
{
exImage = loadImage("C:/Users/Temp/workspace/From Scratch/bin/Ma_rn_0");
imagesLoaded = true;
repaint();
}
private Image loadImage(String fileName)
{
return new ImageIcon(fileName).getImage();
}
public void paint(Graphics g)
{
if(g instanceof Graphics2D)
{
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
}
if(imagesLoaded)
{
drawImage(g, exImage,0,0, null);
}
else
{
g.drawString("Loading...", 5, 12);
}
}
public void drawImage(Graphics g, Image image, int x, int y, String caption)
{
g.drawImage(image, x, y, null);
g.drawString(caption, x+5, y + 12 +image.getHeight(null));
}
}
Unless they are signed, applets can only load images from the same location from where they originated. Here you are attempting to load an image from the local disk. All initialisation for applet resources should be done from the init
method. Images can be loaded as resources from the same JAR file from which they are deployed. You could do
Image exImage = ImageIO.read(getClass().getResourceAsStream("images/MyImage.jpg"))
这篇关于图像不会出现在我的Java小程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!