Java 如何使用Switch语句设置图像图标
好吧,我在编码方面几乎是个新手,但我正在努力 我需要创建一个ImageIcon,它将使用switch语句来确定要显示的图像 我看了这里的线索: 它建议使用switch语句而不是if语句,所以我认为这会有所帮助。但当我编辑我的代码,并将其更改为以前的代码时,我得到了一个错误,即“ImageIcon无法解析为变量”。我尝试过各种大小写组合,但都不起作用。我把最初的代码放在了第一个组合下面。该代码没有给我任何错误消息,但我认为我不应该为每种情况创建一个新的ImageIcon,因为我只需要从程序中的一个中提取,并让switch语句确定要显示的图像 修订守则Java 如何使用Switch语句设置图像图标,java,eclipse,image,switch-statement,Java,Eclipse,Image,Switch Statement,好吧,我在编码方面几乎是个新手,但我正在努力 我需要创建一个ImageIcon,它将使用switch语句来确定要显示的图像 我看了这里的线索: 它建议使用switch语句而不是if语句,所以我认为这会有所帮助。但当我编辑我的代码,并将其更改为以前的代码时,我得到了一个错误,即“ImageIcon无法解析为变量”。我尝试过各种大小写组合,但都不起作用。我把最初的代码放在了第一个组合下面。该代码没有给我任何错误消息,但我认为我不应该为每种情况创建一个新的ImageIcon,因为我只需要从程序中的一个
public ImageIcon dieImage(String string)
{
ImageIcon dieImage = new ImageIcon("");
switch (faceValue){
case 1: dieImage = new ImageIcon ("src/1.jpg");
break;
case 2: dieImage = new ImageIcon("src/2.jpg");
break;
case 3: dieImage = new ImageIcon("src/3.jpg");
break;
case 4: dieImage = new ImageIcon("src/4.jpg");
break;
case 5: dieImage = new ImageIcon("src/5.jpg");
break;
case 6: dieImage = new ImageIcon("src/6.jpg");
break;
}
return dieImage;
}
}
任何帮助都将不胜感激
{
ImageIcon icon = new ImageIcon("");
}
去掉{},只需使用:
ImageIcon icon;
现在,您的switch语句可以为标签指定适当的图标
//case 1: ImageIcon = ("src/1.jpg");
case 1: icon = new ImageIcon("src/1.jpg");
如果语法无效,请按上面所示修复代码
您的另一个语句也不起作用,因为它们只创建了一个图标,但该图标没有分配给可以使用的变量。代码应为:
//case 2: new ImageIcon("src/2.jpg");
case 2: icon = new ImageIcon("src/2.jpg");
然后,要使用此图标,您需要更新包含该图标的标签:
label.setIcon( icon );
所以,我必须有一个“新”的图像图标为每个案件?这是更新的代码,其中包含您的建议和Eclipse希望我做的更改。现在没有错误,但我不确定返回的是“dieImage”还是“null”。谢谢你的帮助!@Rachel,是的,你返回图标。不要忘记“接受”答案,这样人们就知道问题已经解决。谢谢你的帮助。