@Override
public void actionPerformed(ActionEvent e) {
int curLevel = getLevel();
if (!playing && curLevel > 1) {
setLevel(curLevel - 1);
}
}
});
// 退出按钮动作响应
miExit.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
}
3、添加事件监听
/*
- 添加事件监听
*/
/*
- 开始游戏
*/
btPlay.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
// TODO Auto-generated method stub
game.playGame();
}
});
/*
- 暂停游戏
*/
btPause.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
// TODO Auto-generated method stub
if (btPause.getText().equals(“暂停”)) {
game.pauseGame();
} else {
game.resumeGame();
}
}
});
/*
- 停止游戏
*/
btStop.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
// TODO Auto-generated method stub
game.stopGame();
}
});
/*
- 升高难度
*/
btTurnLevelUp.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
// TODO Auto-generated method stub
try {
int level = Integer.parseInt(tfLevel.getText());
if (level < RussiaBlocksGame.MAX_LEVEL) {
tfLevel.setText(“” + (level + 1));
}
} catch (NumberFormatException e) {
// TODO: handle exception
requestFocus();
}
}
});
/*
- 降低游戏难度
*/
btTurnLevelDown.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
// TODO Auto-generated method stub
try {
int level = Integer.parseInt(tfLevel.getText());
if (level > 1) {
tfLevel.setText(“” + (level - 1));
}
} catch (NumberFormatException e) {
// TODO: handle exception
requestFocus();
}
}
});
/*
- 主要用于解决Jframe窗口大小变化时,里面的组件的位置也会自适应的移动。
*/
addComponentListener(new ComponentAdapter() {
public void componentResized(ComponentEvent ce) {
plTipBlock.fanning();
}
});
4、创建方块
public class ErsBox implements Cloneable {
private boolean isColor;
private Dimension size = new Dimension(); // Dimension类封装单个对象中组件的宽度和高度(精确到整数)
/*
- 方格类构造函数 isColor是不是用前景色为此方格着色,true前景色,false背景色
*/
public ErsBox(boolean isColor) {
// TODO Auto-generated constructor stub
this.isColor = isColor;
}
/*
- 设置方格的颜色 true前景色,false背景色
*/
public void setColor(boolean isColor) {
// TODO Auto-generated method stub
this.