我是一名高中生,通过视频在斯坦福大学学习cs106a。
对于我目前的作业,我必须添加GObjects并将它们相对于窗口大小定位。
我目前正在尝试使用命令
获取窗口的宽度我是一名高中生,通过视频在斯坦福大学学习cs106a。
对于我当前的作业,我必须添加GObjects并将它们相对于窗口大小进行定位。 Gcanvas是作为一个类创建的,并在另一个类中实现。
该类的头和构造函数如下:
import acm.graphics.*;
import java.awt.event.*;
import java.util.*;
import java.awt.*;
public class NameSurferGraph extends GCanvas
implements NameSurferConstants, ComponentListener {
/**
* Creates a new NameSurferGraph object that displays the data.
*/
public NameSurferGraph() {
addComponentListener(this);
drawGrid();
}
我目前正在尝试使用drawGrid()方法中的命令获取窗口的宽度。使用命令:
int width = getWidth();
然而width = 0
可能导致这种情况的一件事:这是我用多个类编写的第一个程序之一。
感谢您的帮助!
答案 0 :(得分:1)
由于这是从构造函数调用的,因此看起来不太可能设置了宽度。我没有使用过GCanvas,但是java.awt.Canvas.getWidth返回0直到设置了宽度。