宇宙飞船java问题gui

时间:2013-05-30 13:11:31

标签: java swagger

import java.lang.Object;
import java.awt.event.*;
import java.lang.*;

public class LevelSelectionMouseListner extends MouseAdapter
{
  public void mouseClicked(MouseEvent event)
  {
    int levelNum = -1;
    boolean standard = true;
    if(event.getSource() == levelMenu.getProvidedList())
{
  levelMenu.clearCustomList();
  levelNum = levelMenu.getProvidedLevelNum();
}
else if (event.getSource()==levelMenu.getCustomList())
{
  levelMenu.clearProvidedList();
  levelNum=levelMenu.getCustomLevelNum();
  standard = false;
}

if(event.getClickCount()==2)
{
  if (levelNum != -1)
  {
    changeContent(PLAY_PANEL, "startPlay");
    playMgr.initLevelForPlay(standard, levelNum);
    playPanel.startTimer();
  }
}
}
}

这段代码给了我多重错误,这个类是我用来创建一个用java射击激光的太空飞船中的一个。问题是什么,为什么不编译?我真的迷路了。谢谢!

2 个答案:

答案 0 :(得分:2)

我重新格式化了您的代码,以便更容易理解。如果您使用Eclipse或Netbeans等集成开发环境(IDE),那将对您有所帮助。

  • levelMenu未定义。
  • 未定义PLAY_PANEL。
  • 未定义playMgr。
  • 未定义playPanel。

您必须在类中定义这些字段,并在构造函数或setter方法中初始化这些字段。

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class LevelSelectionMouseListener extends MouseAdapter {

    @Override
    public void mouseClicked(MouseEvent event) {
        int levelNum = -1;
        boolean standard = true;
        if (event.getSource() == levelMenu.getProvidedList()) {
            levelMenu.clearCustomList();
            levelNum = levelMenu.getProvidedLevelNum();
        } else if (event.getSource() == levelMenu.getCustomList()) {
            levelMenu.clearProvidedList();
            levelNum = levelMenu.getCustomLevelNum();
            standard = false;
        }

        if (event.getClickCount() == 2) {
            if (levelNum != -1) {
                changeContent(PLAY_PANEL, "startPlay");
                playMgr.initLevelForPlay(standard, levelNum);
                playPanel.startTimer();
            }
        }
    }
}

答案 1 :(得分:1)

什么是levelMenu?你使用它而不先声明它。