graphics2D를 사용하고 싶지만 그래픽을 표시 할 수 없습니다. 이것을 repaint()를 사용할 수있게하는 더 좋은 방법이 있습니까? 결국 나는 이미지를 배경으로 설정하고 그 위에 그림을 그릴 수 있고 프레임의 내용을 이미지로 저장하려고합니다. 도대체이 롤 무엇을하고 있는지페인트에서 graphics2D를 사용하는 방법 또는 더 좋은 방법이 있습니까?
import java.awt.image.*;
import javax.imageio.ImageIO;
import javax.swing.*;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import javax.swing.JApplet;
import java.awt.*;
// assume that the drawing area is 150 by 150
public class test extends JApplet
{
final int radius = 25;
int width = 200, height = 200;
BufferedImage img = new BufferedImage(
width, height, BufferedImage.TYPE_INT_ARGB);
public void paint ()
{
Graphics2D g = img.createGraphics();
g.setColor(Color.orange);
g.fillRect(0, 0, 150, 150);
g.setColor(Color.black);
g.drawOval((150/2 - radius), (150/2 - radius), radius*2, radius*2);
}
}
1)'paint()'메소드가 호출되지 않는다는 것을 확인하기 위해 @Override 표기법을 사용하십시오. 2) * "프레임의 내용을 이미지로 저장"* a) 프레임이 아니라 애플릿입니다. b) 기본적으로 애플릿은 파일을 저장할 수 없습니다. 3) 애플릿은 응용 프로그램보다 개발하고 디버그하는 것이 훨씬 복잡합니다. 잠시 동안 애플릿을 사용하지 않는 것이 좋습니다. 4) 도대체 왜 마지막 두 번째 마지막 닫기 전에 15 개의 공백 라인이 있었습니까?''? –