В настоящее время у меня есть небольшая Java-программа, которую я хотел бы запустить как на рабочем столе (т.е. в JFrame), так и в апплете. В настоящее время все рисование и логика обрабатываются классом, расширяющим Canvas. Это дает мне очень хороший основной метод для настольного приложения:
public static void main(String[] args) {
MyCanvas canvas = new MyCanvas();
JFrame frame = MyCanvas.frameCanvas(canvas);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
canvas.loop();
}
Могу ли я сделать что-то подобное для апплета? В идеале MyCanvas должен оставаться одинаковым для обоих случаев.
Не уверен, что это важно, но я рисую, используя BufferStrategy с setIgnoreRepaint(true)
.
Редактировать : Чтобы уточнить, моя проблема, кажется, в рисовании холста - так как все рисование выполняется из вызова canvas.loop()
.