1

我是一名高中生,通过视频在斯坦福学习 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();

但是宽度 = 0

可能导致这种情况的一件事:这是我使用多个类编写的首批程序之一。

谢谢您的帮助!

4

1 回答 1

1

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

于 2010-02-26T17:17:48.870 回答