Java 我想知道我的代码是否遗漏了什么,或者我是否写错了什么
我为特定游戏的窗口编写了代码。而且,由于某些原因,我的板不能显示在窗口上,除非我使窗口的大小可调整。每次我运行我的程序,我必须调整我的窗口一点,我的董事会将显示。希望你能理解,希望你能帮助我 代码: 我不确定是否需要在这里编写板的代码,所以我只写了第一行Java 我想知道我的代码是否遗漏了什么,或者我是否写错了什么,java,window,Java,Window,我为特定游戏的窗口编写了代码。而且,由于某些原因,我的板不能显示在窗口上,除非我使窗口的大小可调整。每次我运行我的程序,我必须调整我的窗口一点,我的董事会将显示。希望你能理解,希望你能帮助我 代码: 我不确定是否需要在这里编写板的代码,所以我只写了第一行 import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; import java.awt.event.KeyList
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JPanel;
import javax.swing.Timer;
import java.awt.event.ActionListener;
public class Board extends JPanel implements KeyListener
{
private static final long serialVersionUID = 1L;
private BufferedImage blocks;
private Shape[] shapes = new Shape[7];
private Shape currentShape;
private Timer timer;
private final int blockSize = 30;
private final int boardWidth = 10, boardHeight = 20;
private int [][] board = new int [boardHeight][boardWidth];
private final int FBS = 60;
private final int delay = 1000/60;
private boolean gameOver = false;
...
提前谢谢 Java有一个线程负责查看事件,因此您应该在那里更改视图属性:
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new Window();
}
}
}
应该使用SwingUtilities.invokeLater在事件线程上更改视图,所以请更改您的main以使用它。非常感谢。我很感激。
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new Window();
}
}
}