2010-02-26 41 views
0

我是一名高中学生,通过视频在斯坦福大学学习cs106a。Java中的窗口维度Gcanvas noob问题

对于我目前的任务,我必须添加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();

但宽度= 0

一件事,可能会导致这样的:这是我一直在使用多个类编写的第一个项目之一。

感谢您的帮助!

回答

0

因为这是从构造函数中调用的,所以看起来不大可能已经设置了宽度。我没有使用GCanvas,但java.awt.Canvas.getWidth返回0,直到设置了宽度。