我正在编写一个图像拼图游戏,代码的一部分是将用户选择的部分与正确图像的部分进行比较。
每个图像片段已作为ImageIcon添加到JButton中。
需要使用标识符来区分每个图像块并进行比较。
我为每个作为标识符创建的JButton设置了setText()。
但这样做会导致ImageIcon和setText出现在JButton上。
有没有办法隐藏setText值并只显示ImageIcon?
private String id;
private int cc;
private JButton[] button = new JButton[9];
cc += 1;
id += ""+cc;
for(int a=0; a<9; a++){
// dd refers to the variable for the image pieces for each JButton
button[a].setIcon(new ImageIcon( dd ));
button[a].setText(id);
}
答案 0 :(得分:2)
我建议制作另一个String
s数组:
String[] ids = new String[button.length];
然后button[a]
的ID为ids[a]
。
以下是您的更改代码:
private String id;
private int cc;
private JButton[] button = new JButton[9];
private String[] ids = new String[button.length];
//cc += 1;
//id += ""+cc;
id += Integer.toString(++cc); //easier way
for(int a=0; a<9; a++){
// dd refers to the variable for the image pieces for each JButton
button[a].setIcon(new ImageIcon( dd ));
ids[a] = id;
}