Двойная буферизация с awt
возможна ли двойная буферизация (в java) с помощью awt? В настоящее время я знаю, что swing не должен использоваться с awt, поэтому я не могу использовать BufferStrategy и еще много чего (у меня уже есть код, написанный в awt, который я не хочу переписывать в swing).
Если двойная буферизация возможна с awt, должен ли я писать буфер вручную? В отличие от swing, awt, похоже, не имеет такой же встроенной возможности двойной буферизации.
Если мне нужно написать код вручную, есть ли хороший учебник посмотреть? Или это просто проще/целесообразно для начинающего программиста использовать swing вместо этого?
извините за многоступенчатый вопрос. Спасибо за ваше время :)
1 ответов
на это легко ответить в интернете. Просто найдите "двойной буфер awt", и вы найдете много примеров. Вы даже можете видеть старый пример Я написал себя в 1998 году в Java 1.0 AWT. Вам просто нужно создать экземпляр собственного графического объекта и нарисовать изображение, а затем Блит это изображение в холст. Вот ключевой бит кода в моем примере:
public void paint(Graphics g) {
if (doubleBuffer) {
paintSky(top.gBuf);
g.drawImage(top.buf, 0, 0, this);
} else {
paintSky(g);
}
}