我正在做一个简单的图像猜谜游戏。我没有为每个图像都有一个jLabel,而是只使用一个jLabel,并且在正确猜测图像后单击按钮时,它会使用数组更改其图标。
但是我该如何编码,以便jTextField(txtAnswer
)中所需的答案由jLabel中的图标集确定?
例如,如果当前图标是阿斯顿马丁DBS并且用户猜对了,则该图标将更改为法拉利458。那么我该怎么做才能确保txtAnswer
现在要求用户输入"法拉利458"才能根据设置的图像图标正确猜测?
这是我目前拥有的代码:
private static String[] imageList = {"/carGuessPackage/2010 Aston Martin DBS.jpg", "/carGuessPackage/2010 Ferrari 458 Italia.jpg"};
//This method is called in the constructor to set the first image on startup
public void firstIcon()
{
ImageIcon image;
image = new javax.swing.ImageIcon(getClass().getResource(imageList[0]));
lblImage.setIcon(image);
}
private void btnCheckActionPerformed(java.awt.event.ActionEvent evt) {
ImageIcon image;
if(imageList[0].equals(true))
{
if("Aston Martin DBS".equals(txtAnswer.getText()))
{
image = new javax.swing.ImageIcon(getClass().getResource(imageList[1]));
lblImage.setIcon(image);
}
else
{
JOptionPane.showMessageDialog(this, "Incorrect");
}
}
}
查看 JLabel.setIcon() 方法。您将需要 Icon 对象的数组,它们将被传递给现有的 JLabel。