java无法解析类型Jpanel_添加JPanel不显示Java

我一直在想为什么gameControlArt(这是一个JPanel对象)不会出现在也是JPanel对象的gamePanel上。添加JPanel不显示Java

我正在创建的东西:用户在运行该程序时看到mainMenuArt(具有包含艺术作品的JLabel的JPanel对象)添加到gamePanel。当用户按下某个键时,mainMenuArt将被删除。 gameControlArt出现。用户再次按下一个键,gameControlArt被移除,画布对象被添加到gamePanel对象。

取而代之的是:mainMenuArt出现在gamePanel上,这很好。问题出在移除mainMenuArt之后,gameControlArt(这是另一个JPanel对象,它具有包含插图的JLabel对象)不会被添加到gamePanel(它是一个JPanel对象)。相反,它会在JPanel对象没有添加组件时显示默认的灰色区域。当用户按下某个键时,画布将显示在gamePanel上。

所以总结一下问题是:gameControlArt根本不会显示在游戏面板上。

我尝试updateUI(),重新验证和repaint()但这些方法调用不起作用的一些奇怪的原因。

public class GameWindow extends JFrame implements KeyListener{

gamePanel = (JPanel) getContentPane();

gamePanel.remove(mainMenuArt);

gameControlArt = new GameControlArt();

gamePanel.add(gameControlArt);

GameWindow.getGamePanel().revalidate();

}

public class extends Canvas implements KeyListener

{

GameWindow.getGamePanel().add(this);

GameWindow.getGamePanel().revalidate();

}

2013-05-30

Nicholas

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值