У меня есть учебное пособие по игре, за которым я последовал, который рисует String на экране с помощью Graphics2D. Он работает как звезда, но единственная проблема в том, что я не понимаю, почему.Экран сброса Graphics2D?
Я называю рисование (графика) в игровом цикле, и он отлично работает. Я использую int, названный currentChoice, чтобы отслеживать, какая буква должна быть красной, и которая должна быть черной.
Ну, я называю метод Draw в цикле. Я просто не понимаю , как графика очищает предыдущую строку, нарисованную. Я имею в виду, я постоянно вызываю метод, и он продолжает рисовать строку в окне и ее «очистку» других (если вы получаете то, что я говорю).
Основном, я просто не undertstant, как это очистка экрана (Примечание: Я супер новичок в этом роде)
КОД (я называю это в цикле, и он работает):
public void draw(Graphics2D graphics) {
bg.draw(graphics);
graphics.setColor(titleColor);
graphics.setFont(titleFont);
graphics.drawString("Peache's Revenge", 50, 70);
graphics.setFont(font);
for (int i = 0; i < options.length; i++) {
if (i == currentChoice) {
graphics.setColor(Color.RED);
} else {
graphics.setColor(Color.BLACK);
}
graphics.drawString(options[i], 145, 140 + i * 15);
}
}
Что делает 'bg.draw'? – MadProgrammer
Это рисовать фон, который движется. Мне просто интересно, как это ясно в строке ... но я могу отправить вам класс Backhground. Класс BG: http://pastebin.com/pNWwhPB9 – user3131055