Вопрос

Я учусь в старшей школе и изучаю cs106a в Стэнфорде по видео.

Для моего текущего задания мне нужно добавить объекты GObject и расположить их относительно размера окна.

В настоящее время я пытаюсь получить ширину окна с помощью команды

Я учусь в старшей школе и изучаю cs106a в Стэнфорде по видео.

Для моего текущего задания мне нужно добавить объекты GObject и расположить их относительно размера окна.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

Одна вещь, которая может быть причиной этого:это одна из первых программ, которые я написал с использованием нескольких классов.

Спасибо за помощь!

Это было полезно?

Решение

Поскольку это вызывается из конструктора, маловероятно, что была установлена ​​ширина.Я не использовал GCanvas, но java.awt.Canvas.getWidth возвращает 0, пока не будет установлена ​​ширина.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top