用错误计数器更改刽子手的图像

时间:2012-08-28 01:49:37

标签: java imageicon

我正在测试我的刽子手应用程序并且还没有正确的代码来隐藏原始单词(假设这是猜测的)所以我正在使用if语句告诉我这封信是否在是不是

if(original.toUpperCase().indexOf(button.getText())!=-1){
                 JOptionPane.showMessageDialog(null, "Your word does contain " + text );
             }
             else{
                 JOptionPane.showMessageDialog(null, "There is no " + text );
                 error++;
             }
             }
             });

现在根据我的理解,如果字母不在单词中,则错误必须加1个整数

error++;

现在我使用的图像代码

 imageName = null;
    error =0;
   if(error >= 0) imageName = "hangman1.jpg";
   if(error >= 1) imageName = "hangman2.jpg";
   if(error >= 2) imageName = "hangman3.jpg";
   if(error >= 3) imageName = "hangman4.jpg";
   if(error >= 4) imageName = "hangman5.jpg";
   if(error >= 5) imageName = "hangman6.jpg";
   if(error >= 7) imageName = "hangman7.jpg";
    ImageIcon icon = null;
    if(imageName != null){
        icon = new ImageIcon(imageName);
    }
   JLabel image = new JLabel();
   image.setIcon(icon);

根据其中一个帖子这是正确的,但当我故意选择一个错误的字母(用于测试目的)时,图像保持不变

和图像“hangman1.jpg”是一个占位符,(只是结构)

任何人都可以告诉我出错的地方

查看完整代码 hangman picture isn't changing

2 个答案:

答案 0 :(得分:1)

在进行检查之前,您将错误设置为0

删除此行:

error =0;

答案 1 :(得分:0)

从您的代码段中,您不清楚是否将JLabel image添加到父容器。

不需要重新创建JLabel

只需创建一个实例并调用image.setIcon(...);

即可