java swing 实时使用 revalidate 和 repaint

标签 java swing

我对我的英语水平感到抱歉

我想在roop中使用revalidate和repaint来显示移动的实时 View

我应该做什么?

救救我~~

void G_PRINT_MAP()
{

    System.out.println("[G_PRINT_MAP] x is "+x+"  y is"+y);

    this.MAP_PANEL = new JPanel( new GridLayout(this.MAP.length, this.MAP.length) ); //패널설정

    for(int i=0; i<this.MAP.length; i++)
    {
        for(int j=0; j<this.MAP.length; j++)
        {
            if((i==x && j==y) && MAP[i][j] == 3)
            {
                //함정밟았을
                System.exit(0);//프로그램종료 
            }
            else if(i==x && j==y)
            {
                this.MAP_PANEL.add(new JLabel(new ImageIcon("./image/me.png")));
                System.out.println("x is "+x+" y is "+y);
            }
            else if(i==(MAP.length-1) && j==(MAP.length-1))
            {
                this.MAP_PANEL.add(new JLabel(new ImageIcon("./image/bread.png")));
            }
        }
    }

    MIRO_FRAME.add(this.MAP_PANEL);

    //실시간으로 보이기위해서 사용 
    this.MAP_PANEL.revalidate();
    this.MAP_PANEL.repaint();
}


public int G_AUTO_GAME(int x, int y)
{
    int RAND_CHECK[]={0,0,0,0};
    int RESULT = -1;
    int SAVE_VALUE=-1;

    for(int i=0; i<10; i++)
    {
        for(int j=0; j>10; j++)
        {

            this.x=x;
            this.y=y;
            G_PRINT_MAP();
        }
    }
}

最佳答案

而不是替换组件,如图here所示,考虑更新组件的内容,如图 here .

关于java swing 实时使用 revalidate 和 repaint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20439015/

相关文章:

java - SonarQube:如何将多个质量配置文件应用于一个项目?

java - 一旦执行异步任务任务,变量就会丢失数据

java - 从 Java 应用程序使用 Sharepoint Office 365 Web 服务

java - 初学者 Swing

java - GridBagLayout 和面板的问题

java - 应该很简单,如何让 jbutton 显示我已经通过 eclipse 中的窗口生成器创建的 jframe?

java - 如何从字符串中取出某个单词

java - 就速度而言,什么时候存储比较结果与重新计算比较才有意义?

java - 我的关键监听器出了什么问题?它根本不进入按下的按键

java - java是否利用GPU进行绘画