Java Graphics2D DrawString - PullRequest
       14

Java Graphics2D DrawString

0 голосов
/ 12 апреля 2010

Эй, ребята, у меня есть небольшая проблема здесь. У меня есть панель, где я рисую строку. Это игра, поэтому я продолжаю перерисовывать счет, чтобы обновить его. Однако, когда я рисую его снова, он рисуется поверх предыдущего счета, поэтому он выглядел полностью искаженным. Есть идеи как это исправить?

comp2d.drawString (GetScore (Score), Scorex, ScoreY);

Ответы [ 3 ]

5 голосов
/ 12 апреля 2010

Вам нужно перерисовать фон, прежде чем рисовать строку. Если это обычная панель, вы можете перерисовать фон, вызвав super.paintComponent(g) в вашем собственном paintComponent; однако, так как это игра, я собираюсь догадаться, что у вас есть какой-то другой фон, который вам нужно нарисовать. Кроме того, я бы посоветовал вам использовать JLabel вместо использования команды drawString, если это возможно.

1 голос
/ 12 апреля 2010

Вы можете попробовать использовать repaint () после comp2d.drawString ().

0 голосов
/ 13 мая 2017

при вызове этой команды: comp2d.drawString(GetScore(Score),ScoreX,ScoreY);

Вы должны вызвать это: comp2d.dispose()

, потому что все операции с comp2d будут применяться после .dispose()

...