Написать переменную с помощью drawstring()

У меня проблемы с графикой в ​​моей программе. Я хочу drawstring(), чтобы нарисовать переменную на экране, однако, переменная дана из другого класса.

Вот что я имею в виду:

public void paint(Graphics g){
    g.drawString(text, sPosX, sPosY);
}

Это мой метод рисования. Я хочу, чтобы другой класс запустил его, передавая текстовую переменную, чтобы сказать, что скажет строка.

Я не уверен, как это сделать, так как я не могу сделать что-то вроде gui.paint(null, data) (gui - это имя класса), потому что даже если я добавлю (String text) в метод paint() Я получаю ошибки.

Если бы вы могли помочь, то был бы очень признателен. Спасибо!

1 ответ

Дайте вашему классу GUI поле с установщиком, и пусть ваш метод рисования ссылается на поле.

public class GUI extends Component
{
  private String text;

  public void setText(String text)
  {
    this.text = text;
  }

  public void paint(Graphics g)
  {
    g.drawString(this.text, sPosX, sPosY);
  }
}

В вашем другом классе:

gui.setText("Now is the time for all good men");
Другие вопросы по тегам