2014-04-17 2 views
0

죄송합니다.이 답변을 다른 곳에서 찾을 수는 있지만 솔루션을 찾을 수 없습니다.배경 이미지가 표시되지 않습니다. JPanel/JScrollPane에 의해 차단 되었습니까?

JScrollPane에 배경 및 JPanel을 설정하는 JFrame이 있습니다.

그러나 내 jframe에 scrollpane을 추가하면 불투명으로 설정하더라도 회색으로 만 표시됩니다.

jpanel 뒷면이 투명하고 버튼이 jpanel에 추가되어 있기 때문에 배경 위에 스크롤하십시오. 여기

내 코드입니다 :

import java.awt.BorderLayout; 
import java.awt.Dimension; 
import java.awt.Graphics; 
import java.io.File; 

import javax.imageio.ImageIO; 
import javax.swing.*; 


public class ZeldaBundle extends JFrame { 

JPanel panel = new JPanel(); 
JScrollPane scroller = new JScrollPane(panel); 
JLabel background = new JLabel(new ImageIcon("images/back.jpg")); 

JButton theLegendOfZelda = new JButton() { 
    public void paint(Graphics g) { 
     try { 
      g.drawImage(ImageIO.read(new File("images/The Legend Of Zelda.png")), 0, 0, null); 
     } catch (Exception e) { 
      setText("The Legend OF Zelda"); 
     } 
    } 
}; 

public ZeldaBundle() { 
    setSize(900, 563); 
    setResizable(false); 
    setDefaultCloseOperation(EXIT_ON_CLOSE); 
    setIconImage(new ImageIcon("images/zelda.png").getImage()); 

    setContentPane(background); 
    background.setLayout(new BorderLayout()); 

    panel.setPreferredSize(new Dimension(1000, 563)); 
    panel.setLayout(null); 

    panel.setOpaque(false); 
    scroller.setOpaque(false); 

    theLegendOfZelda.setSize(270, 110); 
    theLegendOfZelda.setLocation(700, 113); 
    panel.add(theLegendOfZelda); 
    scroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS); 
    scroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER); 
    add(scroller); 
    setVisible(true); 
    } 

    public static void main(String[] args) { 
     new ZeldaBundle(); 
    } 
} 

사람이이 문제를 해결하거나 답하기 된 위치를 알고하는 방법을 알고 있나요?

감사합니다.

가 (예 나는 그것의 널 (null) 레이아웃을 알고, 필자는이 (분류되어있어!) 병에 변화를)

답변

관련 문제