[英]How do I get my Java Applet to show the card images?
因此,这是一个Java小程序,我不确定为什么它不呈现卡(卡文件名是与“ .gif”扩展名连接的任意数量的“类型”数组。)我不知道该怎么做得到它渲染。 我不知道我做错了什么还是忘记了什么,但是如果您发现问题,请告诉我。
import javax.swing.*;
import java.net.URL;
import java.applet.*;
import java.awt.*;
import java.awt.Graphics;
public class Assignment12 extends JApplet {
private final static int NUMBER_OF_CARDS = 52;
private static Image card1, card2, card3, card4, card5, card6, card7, card8, card9, card10;
private static String[] types = {"h1","h2","h3","h4","h5","h6","h7","h8","h9","h10","hj","hq","hk","c1","c2","c3","c4","c5","c6","c7","c8","c9","c10","cj","cq","ck","s1","s2","s3","s4","s5","s6","s7","s8","s9","s10","sj","sq","sk","d1","d2","d3","d4","d5","d6","d7","d8","d9","d10","dj","dq","dk"};
public static void main (String[] args)
{
for(int i = 0; i < NUMBER_OF_CARDS; i++)
{
int index = (int) (Math.random() * NUMBER_OF_CARDS);
String temp = types[i];
types[i] = types[index];
types[index] = temp;
}
JFrame frame = new JFrame("Assignment12");
Assignment12 applet = new Assignment12();
applet.init();
frame.getContentPane().add(applet, BorderLayout.CENTER);
}
public void init()
{
card1 = getImage(getDocumentBase(), "images/" + types[0] + ".gif");
card2 = getImage(getDocumentBase(), "images/" + types[1] + ".gif");
card3 = getImage(getDocumentBase(), "images/" + types[2] + ".gif");
card4 = getImage(getDocumentBase(), "images/" + types[3] + ".gif");
card5 = getImage(getDocumentBase(), "images/" + types[4] + ".gif");
card6 = getImage(getDocumentBase(), "images/" + types[5] + ".gif");
card7 = getImage(getDocumentBase(), "images/" + types[6] + ".gif");
card8 = getImage(getDocumentBase(), "images/" + types[7] + ".gif");
card9 = getImage(getDocumentBase(), "images/" + types[8] + ".gif");
card10 = getImage(getDocumentBase(), "images/" + types[9] + ".gif");
repaint();
}
public void paint(Graphics g)
{
g.drawImage(card1, 10, 10, this);
}
}
如何获得Java Applet显示名片图像?
加载它,就好像它是一个applet(将是第一步)。 一个简单的测试表明,加载如上所示的applet的方法使getDocumentBase()
方法返回null
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.