在Java中的for循环中显示BufferedImages数组

时间:2015-03-15 17:10:19

标签: java arrays

我有一系列缓冲图像,我试图将图像显示在frame / jpanel上(使用.jar,所以我不知道它是在jfame还是jpanel上)使用for循环。第一张图像是唯一正确显示的图像。我尝试了重新绘制和重新验证,但它不起作用。任何帮助将不胜感激。

这是for循环。

            //loop through all test images and display
        for(int i = 0; i < images.length; i++)
        {
            int xAxis = 1;
            int yAxis = 1;

            imageHandler.displayAnImage(images[i], jvis, xAxis, yAxis, "");

            //if third image in the row then take a new line
            if(i % 3 == 0)
            {
                yAxis = yAxis + 300;
            }

            //display each image side by side
            xAxis = xAxis + 300;
        }

由于

1 个答案:

答案 0 :(得分:0)

您需要初始化xAxis和yAxis变量在开始循环之前,在每个循环开始时,将它们初始化为1,因此所有图像都在同一位置绘制。

        //loop through all test images and display
    int xAxis = 1;
    int yAxis = 1;
    for(int i = 0; i < images.length; i++)
    {
        imageHandler.displayAnImage(images[i], jvis, xAxis, yAxis, "");

        //if third image in the row then take a new line
        if(i % 3 == 0)
        {
            yAxis = yAxis + 300;
        }

        //display each image side by side
        xAxis = xAxis + 300;
    }