小编Jon*_*Mun的帖子

为什么我的jFrame只在我调整窗口大小后才更新?

我知道当你添加/删除一个组件时,你需要revalidate()然后repaint().但是,我正在改变多边形的状态.最初,显示图像,但是当我按下左右键时,图像不会移动.如果我移动窗口,gui会更新.按键时为什么不更新?

public class Terminos {

    private LeftTermin ter;
    private String[] commands = { "UP", "DOWN", "RIGHT", "LEFT" };

    public Terminos() {
        initComp();
    }

    public void initComp() {
        JFrame jFrame = new JFrame();
        jFrame.setSize(500, 500);
        Component pane = new myPanel();
        jFrame.add(pane);
        ter = new LeftTermin(200, 200);
        jFrame.addKeyListener(new KeyListener() {
            public void keyPressed(KeyEvent e) {
                if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
                    System.out.println("r");
                    ter.moveR();
                    // Right arrow key code
                } else if (e.getKeyCode() == KeyEvent.VK_LEFT) {
                    System.out.println("l");
                    ter.moveL();
                    // Left …
Run Code Online (Sandbox Code Playgroud)

java swing resize jframe paintcomponent

2
推荐指数
1
解决办法
1057
查看次数

标签 统计

java ×1

jframe ×1

paintcomponent ×1

resize ×1

swing ×1