캔버스에서 이중 버퍼링을 사용하려고하는데, 전에 한 번도 해보지 않았습니다. 온라인 튜토리얼을 활용하고 캔버스를 인스턴스화하고 버퍼링을 설정하는 다음 코드를 설정했습니다. 렌더링 그래픽 (여기서는 표시되지 않음)을 포함하여 전체 프로세스를 코딩했으며 컴파일러는이를 수용합니다.Java 버퍼 전략 : 컴파일러가 그것을 좋아하지 않습니다.
volCanvas = new VolCanvas();
volCanvas.setBackground(Color.black);
volCanvas.setBounds(10, 380, 1180, 125);
add(volCanvas);
volCanvas.createBufferStrategy(2); (Program blows up here)
offScreen = volCanvas.getBufferStrategy();
ofsg = (Graphics2D) offScreen.getDrawGraphics();
그러나 프로그램은 아래 코드의 플래그가있는 줄에서 폭발합니다. 런타임에서 "구성 요소에 유효한 피어가 있어야 함"이라는 설명과 함께 잘못된 상태 예외가 발생합니다.
내가 알 수있는 한, 소스 코드는 본질적으로 몇 가지 예제에서 본 것처럼 여기에 어떤 일이 일어나는지 실마리가 없습니다. 어떤 도움이라도 대단히 감사하겠습니다.
감사합니다,
존 Doner
왜 질문 요약에 'compiler'를 작성 했습니까? –