Java 有没有更好的方法来添加大量附加到阵列的具有唯一图像的JPanel?
我有一整套卡片作为图像,我需要: 加载为JPanels和 b显示在JFrame中 有没有更好的方法让他们进入我的程序,然后一遍又一遍地写这样的东西Java 有没有更好的方法来添加大量附加到阵列的具有唯一图像的JPanel?,java,swing,jpanel,Java,Swing,Jpanel,我有一整套卡片作为图像,我需要: 加载为JPanels和 b显示在JFrame中 有没有更好的方法让他们进入我的程序,然后一遍又一遍地写这样的东西 final JPanel panelName = draw(new ImageIcon("spritesheet.gif")); 每个图像spritesheet.gif都有一个唯一的名称。这是一副牌 这是抽签 每个图像都有一个唯一的名称 只要他们有某种模式,这就很容易。例如,spades-queen.gif可以由一个数组字符串[]的套装、一个级别数
final JPanel panelName = draw(new ImageIcon("spritesheet.gif"));
每个图像spritesheet.gif都有一个唯一的名称。这是一副牌
这是抽签
每个图像都有一个唯一的名称
只要他们有某种模式,这就很容易。例如,spades-queen.gif可以由一个数组字符串[]的套装、一个级别数组、一个-来分隔它们&最后是一个.gif
它们的格式像黑桃,等等
下面是一个实现:
public class CardNames {
public final static String[] SUITS = {
"Spades", "Hearts", "Diamonds", "Clubs"
};
public final static String[] LEVELS = {
"ace", "two", "three", "four", "five", "six", "seven", "eight", "nine",
"ten", "jack", "queen", "king"
};
public final static String SEP = "";
public final static String XTN = ".gif";
public static void main(String[] args) {
for (String suit : SUITS) {
for (String level : LEVELS) {
System.out.println(level + SEP + suit + XTN);
}
}
}
}
输出
使用带有图标的JLabel。请参阅Swing教程,了解为什么一组面板与一组JLabel对象相对,而这些对象可以分别保存图像的图像图标?每个图像都有一个唯一的名称。我应该在专栏里这么说,但是回到唯一的名字。好的,它们是独一无二的,但它们是否有某种模式,例如,spades-queen.gif可以由一组串[]套衣服和一组关卡组成,a-将它们分开&最后是a.gif……谢谢@andrewhompson,这真是太聪明了。它们的格式类似于aceSpades等等。非常感谢,我实际上是根据你之前的评论实现的,它工作起来很有魅力。我真的很感激,我一直在为这件事喋喋不休。很高兴我能帮上忙,你现在可以继续做更多有趣的事情了
public class CardNames {
public final static String[] SUITS = {
"Spades", "Hearts", "Diamonds", "Clubs"
};
public final static String[] LEVELS = {
"ace", "two", "three", "four", "five", "six", "seven", "eight", "nine",
"ten", "jack", "queen", "king"
};
public final static String SEP = "";
public final static String XTN = ".gif";
public static void main(String[] args) {
for (String suit : SUITS) {
for (String level : LEVELS) {
System.out.println(level + SEP + suit + XTN);
}
}
}
}
aceSpades.gif
twoSpades.gif
threeSpades.gif
fourSpades.gif
fiveSpades.gif
sixSpades.gif
sevenSpades.gif
eightSpades.gif
nineSpades.gif
tenSpades.gif
jackSpades.gif
queenSpades.gif
kingSpades.gif
aceHearts.gif
// ...
aceClubs.gif
twoClubs.gif
threeClubs.gif
fourClubs.gif
fiveClubs.gif
sixClubs.gif
sevenClubs.gif
eightClubs.gif
nineClubs.gif
tenClubs.gif
jackClubs.gif
queenClubs.gif
kingClubs.gif