2014-04-23 8 views
0

우리는 팩맨 게임을하고 있으며 배경 위에 팩맨 그림을 추가하고 싶습니다. 누군가가 Jlayered Pane을 구현하는 예제 코드를 제공 할 수 있다면 좋을 것입니다.JLayered Pane을 사용하여 다른 이미지 위에 이미지를 표시하는 방법?

다음은 작성하려고 시도한 코드 중 일부입니다. 우리가 그것을 실행하려고하면 아무것도 표시하지 않습니다 :.이에

JLayeredPane pacman = new JLayeredPane(); 

    pacman.setPreferredSize(new Dimension(576, 655)); 





    ImageIcon sprite = new ImageIcon("C:\\\\Users\\\\16ayoubc\\\\Desktop\\\\Pacman-moving.gif"); 
    ImageIcon background = new ImageIcon("C:\\\\Users\\\\16ayoubc\\\\Desktop\\\\background.png"); 

    JLabel pacmansprite = new JLabel(sprite); 
    JLabel background1 = new JLabel(background); 

    background1.setVisible(true); 
    pacman.setLocation(255, 255); 
    pacman.setVisible(true); 
    pacman.setOpaque(true); 

    pacman.add(background1, new Integer(0)); 
+0

이와 같은 상황에 대해 단일 구성 요소에서 [직접 것들을 그림] (http://docs.oracle.com/javase/tutorial/2d/index.html)을 사용하는 것이 좋습니다. Swing 컴포넌트 계층은 버튼, 텍스트 필드 및 이와 유사한 것들로 UI를 구성하기위한 것입니다. –

+0

마지막 질문 (http://stackoverflow.com/q/23061863/131872)의 답변을 수락하지 않으므로이 질문을 건너 뛰겠습니다. – camickr

답변

0

나는 그냥 JLayeredPane에 캔버스를 추가하고보다 java.awt.Graphics에서 발견 java2D (및 java.awt.Graphics2D를 사용하여 이미지를 페인트해야한다고 생각 자세한 정보는 유효한.). 보다 Graphics2D 방법 drawImage(BufferedImage img, int x, int y, int width, int hight);을 사용해보십시오. 이것은 복잡 할 수도 있지만 더 잘 작동 할 수도 있습니다.

이 작품이 좋겠어!