3

我想要一个使用图像作为背景的 JPanel,我想为此面板添加新面板,以便它们位于此背景图像的顶部。我尝试了以下方法:

Image background;
 public Table(){
  super();
   ImageIcon ii = new ImageIcon(this.getClass().getResource("pokerTable.png"));
      background = ii.getImage();
      setSize(Constants.FRAME_WIDTH, Constants.TABLE_HEIGHT);
 }
 @Override
 protected void paintComponent(Graphics g)
 {
  super.paintComponent(g); 
  if (background != null){
        g.drawImage(background, 0,0,this.getWidth(),this.getHeight(),this);
  }

      JButton button = new JButton("hello world");

      JPanel OverlayedPanel1 = new JPanel();
      OverlayedPanel1.setMinimumSize(new Dimension(600,50));
      OverlayedPanel1.setMaximumSize(new Dimension(600,50));
      OverlayedPanel1.setPreferredSize(new Dimension(600,50));
         OverlayedPanel1.add(button, BorderLayout.CENTER);
      OverlayedPanel1.setBackground(Color.yellow);

  }

显示背景图像但不显示 OverlayedPanel1。有任何想法吗?

4

1 回答 1

2

您没有添加OverlayedPanel1到面板中。

add(OverlayedPanel1);
于 2010-01-26T17:27:15.720 回答