我正在编写一个在迷宫GUI周围运行鼠标的迷宫程序。我不确定每次程序循环时如何将GUI中的现有按钮更新为新颜色。
我以为我可以在现有顶部添加一个新按钮。 只要问我是否想要查看GUI代码。
现在我已经尝试将新按钮添加到现有内容窗格中,但是我怀疑在按钮顶部添加按钮会弄乱GUI。原因是当我运行代码时按钮屏幕倾斜。
以下是我正在使用的三种方法。
这就是我的想法,我可以做,但它不起作用。我想我可以将更新的行和列传递给drawRat()
方法。该按钮显示在GUI中,但它是倾斜的并且分割了我现有的按钮布局。
public static String update(String toMaze){
char [] newPos = toMaze.toCharArray();
int x = 10;
int y = 1;
if (newPos [1] == 'r'){
y--;
}
if (newPos [3] == 'r'){
x--;
}
if (newPos [5] == 'r'){
x++;
}
if (newPos [7] == 'r'){
y++;
}
Maze.drawRat(x,y);
这是drawRat()
方法。我想我应该说我将JFrame和内容窗格移动到类static
的类构造函数中,以便整个程序具有范围。所以c.add()
引用了那个。
public static void drawRat(int b, int r){
JButton rat = new JButton();
rat.setBackground(Color.GREEN);
rat.setOpaque(true);
rat.setBorderPainted(false);
c.add(rat);
rat.setVisible(true);
rat.setLocation(b, r);
rat.setSize(10,10);