0
Я пытаюсь запустить метод только один раз, когда я вызываю его в методе paint()
, но когда я его называю обычно, он просто запускается снова и снова. Пример: выходВыполнить метод только один раз в paint() (Java)
private void someMethod()
{
System.out.println ("Success");
}
@Override
public void paintComponent (Graphics g)
{
someMethod();
repaint();
}
Это будет «Успех» навсегда, я только могу вывести его один раз.
'paintComponent (....)' вызывается, когда компонент перекрасили, вызов 'перекрасить()' в этом метод вызовет бесконечную рекурсию. – Titus
метод 'repaint' называет' paintComponent' mehod. Поэтому, когда вы вызываете 'repaint' в' paintComponent', он переходит в бесконечный цикл. Поэтому он будет продолжать печатать 'Success' – Blip
Использовать глобальное логическое значение, чтобы указать, что этот метод уже вызван и проверить, что логическое значение внутри метода – user