如何使用整数值调用ImageIcon方法

时间:2015-07-23 18:07:38

标签: java methods imageicon

我正在尝试使用整数作为输入参数调用ImageIcon方法,但它不起作用。为什么呢?

一个名为pairOfDice.java的类中的调用方法:

//Obtain die1 image by calling result of the roll
    public static Image getDie1Image()
    {
        dieVal = die1.roll();
        face1 = dieVal.getImage();
        return face1;
    }

在名为Die.java的类中调用的方法:

//-----------------------------------------------------------------
//  Returns an image representation of this die.
//-----------------------------------------------------------------
    public ImageIcon getImage(int dieVal)
       {
           int cube = dieVal;
           ImageIcon face = null;
           switch(cube)
            {
            case 1:........rest of the switch statements
            }
            return face;
        }

特定错误:“无法在基本类型int”

上调用getImage()

我想让PairOfDice.java中的静态整数“dieVal”值为1-6,并使用它来调用Die.java中的getImage()。然后,getImage()将使用该值来选择其中一个模具图像(一个png)的ImageIcon并将其返回到getDie1Image(),然后将face1作为当前模具面图像返回。

1 个答案:

答案 0 :(得分:0)

getImage方法应返回Image,而不是ImageIcon。您可以轻松地从图像中获取ImageIcon。

ImageIcon imageIcon = new ImageIcon(image);

getDie1Image应该只是getDieImage。您可以调用该方法两次。 getDieImage方法应如下所示。

// Obtain die image by calling result of the roll
public static Image getDieImage(Die die) {
    int dieVal = die.roll();
    Image face = die.getImage(dieVal);
    return face;
}