繁体   English   中英

在Java Applet中导入图像

[英]Importing Images in a Java Applet

我正在尝试创建一个加载52张卡片的小程序,将它们随机播放(使用随机数生成器),然后以两行五行显示卡片的前10张卡片。 我有HTML文件和52张卡片的图像,但有一种方法可以加载图像,而无需加载每个单独的图像。 你如何从网络上加载图像?

..有一种加载图像的方法,而无需加载每个单独的图像

将它们放在一个巨大的图像中,并在运行时将其切片。 这个答案中有一个例子。

在Google图片中搜索“播放+卡片”,并且在点击的第一页中可能会有2个或更多的图块集。

但是,加载速度更快:

  1. 卡背景
  2. 每个西装符号的ImageShape
  3. 字母和数字的ImageFont

然后在启动时将它们组合起来形成52张牌中的每张牌。

它显然也需要卡的共同“反面”。

你如何从网络上加载图像?

通过URL。

一些替代品:

  1. Applet.getImage(URL)
  2. Toolkit.getImage(URL)
  3. 或者对于同步加载的BufferedImage使用ImageIO.read(URL)

前两个方法是异步的,需要一个ImageObserver

考虑将此作为使用Java Web Start启动的应用程序。 如果您继续使用applet,请浏览applet信息中链接。 页面

尝试这个。

Image[] cards = new Image[52]

private void loadImages(){
    for (int i=0; i<cards.length; i++){
        URL imgUrl = getClass().getResource("image"+(i+1));
        cards[i] = getImage(imgUrl);
    }
}

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM