无法使用paintComponent交换图像

时间:2017-10-02 00:09:08

标签: java graphics jpanel paintcomponent

我正在制作一款游戏,而我正在尝试使用另一种突出显示的图像'当靠近玩家时。现在我试图在播放器的超类中的paintComponent中绘制不同的图像,其代码如下:

public void paintComponent ( Graphics g ) {

  if ( isBeingUsed() && img_hi != null )
     g.drawImage( img_hi, point.x, point.y, null );
  else if ( img != null )
     g.drawImage( img, point.x, point.y, null );
}

从扩展JPanel的类中调用此paintComponent方法,此代码如下:

public void paintComponent ( Graphics g ) {
  super.paintComponent( g );

  if ( img != null )
     g.drawImage( img, -1100, -1000, null );

  if ( player != null )
     player.paintComponent( g );

  for ( int i = 0; i < dirtList.length; i++ ) {
     if ( dirtList[i] != null )
        dirtList[i].paintComponent( g );
  }

  repaint();
}

就像现在一样,突出显示的图像版本只出现在屏幕上,但我从调试中知道正在绘制常规图像版本。我真的不确定我的错误来自哪里,任何帮助都会受到赞赏。

0 个答案:

没有答案