Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 何时调用ComponentResistized?_Java_Debugging_Components_Componentlistener - Fatal编程技术网

Java 何时调用ComponentResistized?

Java 何时调用ComponentResistized?,java,debugging,components,componentlistener,Java,Debugging,Components,Componentlistener,您好,我是java编程新手,什么时候会调用ComponentResistized?程序第一次启动时会调用它吗?因为在我的代码中,我没有在屏幕中央添加rect,直到窗口调整了大小。但每当我启动程序时,rect就会被添加到屏幕中间。我很抱歉,如果我听起来含糊不清,但非常感谢你看这个。希望你有一个伟大的一天 import java.awt.event.ComponentEvent; import java.awt.event.ComponentListener; import acm.graphics

您好,我是java编程新手,什么时候会调用ComponentResistized?程序第一次启动时会调用它吗?因为在我的代码中,我没有在屏幕中央添加rect,直到窗口调整了大小。但每当我启动程序时,rect就会被添加到屏幕中间。我很抱歉,如果我听起来含糊不清,但非常感谢你看这个。希望你有一个伟大的一天

import java.awt.event.ComponentEvent;
import java.awt.event.ComponentListener;
import acm.graphics.GCanvas;
import acm.graphics.GRect;

public class MyCanvas extends GCanvas implements ComponentListener {

    public MyCanvas() {
        addComponentListener(this);
        rect = new GRect(WIDTH, HEIGHT);
        rect.setFilled(true);
    }

    public void update() {
        removeAll();
        add(rect, (getWidth() - WIDTH) / 2, (getHeight() - HEIGHT) / 2);
    }

    public void componentResized(ComponentEvent e) {
        add(rect, 20, 20);
        update();
    }

    public void componentMoved(ComponentEvent e) {}
    public void componentShown(ComponentEvent e) {}
    public void componentHidden(ComponentEvent e) {}

    private int WIDTH = 30;
    private int HEIGHT = 30;

    private GRect rect;
}

根据JavaDoc,当组件的大小发生变化时会调用它。。这意味着当窗口被打开时,应该调用它,除非你没有注册侦听器。非常感谢你,托马斯。根据组件大小更改时调用的JavaDoc,它确实很有用。。这意味着当窗口被打开时,应该调用它,除非你没有注册侦听器。非常感谢你,托马斯。这真的很有帮助