我是Java的新手(虽然我对JavaScript有广泛的了解),
我正在努力工作Canvas,这导致了这个奇怪的问题.
如您所见,在我定义了它的大小之后Canvas,我正在尝试打印它.但它不能正确打印尺寸.
import java.awt.Canvas;
import java.awt.Dimension;
public class test extends Canvas {
public static final int WIDTH = 180;
public static final int HEIGHT = 250;
public test() {
setMinimumSize(new Dimension(WIDTH,HEIGHT));
setMaximumSize(new Dimension(WIDTH,HEIGHT));
setPreferredSize(new Dimension(WIDTH,HEIGHT));
System.out.println(getWidth());
}
public static void main(String[] args) {
new test();
}
}
Run Code Online (Sandbox Code Playgroud)
为什么尺寸改变了?
为什么打印零?如何正确打印画布的大小?
您尚未设置大小,因此宽度和高度仍为0.您只需设置布局提示的大小.布局管理器使用它们来布局组件.由于您未使用布局管理器,因此未设置画布的实际大小.
使用setSize(new Dimension(WIDTH,HEIGHT));设置的实际大小.