2013-10-24 5 views
0

graphic2D.drawImage() 메서드를 사용하여 .PNG 이미지를 그려 봅니다. 그리고 제대로 만들었지 만 JPanel이 내 Frame에 있고 이미지를 그릴 때 배경에 표시됩니다. 나는 그것이 전경에 나타나기를 바란다. 분명히 내 JPanel 앞에있다.전경에 이미지 그리기

+0

"전경"이란 무엇을 의미합니까? 난 당신이 그것을 정확하게 그려, 즉, overriden paintComponent 메서드 내부에 있다고 가정합니다. 이 경우 네, 구체적으로는 패널의 배경 위에 그려 지지만 테두리 및 하위 구성 요소 뒤에 그려집니다. – Radiodef

+0

그는 JFrame의 페인트 방법으로 이미지를 그렸다고 생각합니다. – yilmazburk

+2

'JPanel'에 이미지를 그리는 경우'JFrame'의 맨 위에 표시해야하지만 패널의 내용 아래에 나타납니다. 모든 이미지 위에 이미지를 그리려면 유리 창 레이어를 대신 사용해야합니다. 자세한 내용은 [루트 패널 사용 방법] (http://docs.oracle.com/javase/tutorial/uiswing/components/rootpane.html)을 참조하십시오. – MadProgrammer

답변

-1

JPanel을 하나 더 추가하고 그 이미지를 paintComponent 방법으로 그려야합니다.

@Override 
    protected void paintComponent(Graphics g) { 
     super.paintComponent(g); 
     if (yourImage != null) 
      g.drawImage(yourImage, 0, 0, this); 
    } 

및 다른 JPanel을 숨기고 setVisible() 기능이 JPanel을 보여줄 수있는 것보다

.

+0

'paintComponent'가 구성 요소; – MadProgrammer