У меня есть пользовательский JPanel, и иногда во всей моей программе мне нужно вызывать метод, который окрашивает экран в черный цвет, вот и все.
public void clearScreen() {
Graphics g = getGraphics();
g.setColor(Color.black);
g.fillRect(0,0,getWidth(),getHeight());
}
Когда я запускаю программу, я вызываю этот метод.
Однако я считаю, что иногда это работает, а иногда нет. Это очень странно. Я также обнаружил, что когда он не работает, графический объект НЕ является нулевым, и ширина и высота также правильно определены (из getWidth () и getHeight ()).
Почему это иногда работает, а иногда не работает?
Как правильно сделать собственный рисунок на моей JPanel в какой-то момент в программе? Правильно ли использовать getGraphics (), как я делаю? В моем JPanel (в какой-то момент) есть JComponents, но позже я удаляю эти JComponents и делаю некоторые графические рисунки. Почему это иногда только работает?