五子棋深入

    


        今天把五子棋每個按鈕的操作功能基本上實現了,比如點擊開始按鈕後進入選擇遊戲模式界面,選擇完
成後根據不同的模式進入不同的界面下棋,又如悔棋操作,完成了點擊悔棋按鈕後的下一個棋子的顏色
和位置設置。還有一些功能需要後續完善。通過幾天的實踐,對於事件操作熟練了不少。


監聽“開始”按鈕部分代碼:

if (buttonflag.equals("開始")) {
// 執行開始的操作
beginFlag = true;
chessFrame.setVisible(false);
select();

// 選擇遊戲模式的方法
public void select() {

final JFrame selectFrame = new JFrame("模式選擇界面");
selectFrame.setSize(240, 280);
selectFrame.setLocationRelativeTo(null);
JLabel jl = new JLabel("請選擇遊戲模式:");
JButton renren = new JButton("人人模式");
JButton renji = new JButton("人機模式");
selectFrame.setLayout(new FlowLayout(1, 30, 40));
selectFrame.add(jl);
selectFrame.add(renren);
selectFrame.add(renji);
ActionListener action_listener2 = new ActionListener() {

public void actionPerformed(ActionEvent e) {
String buttonFlag2 = e.getActionCommand();
if (buttonFlag2.equals("人人模式")) {
// 點擊人人模式後的操作
moshiFlag = 1;
selectFrame.setVisible(false);
mainUI();


} else if (buttonFlag2.equals("人機模式")) {
// 點擊人機模式後的操作
moshiFlag = 2;
}
}


監聽“悔棋”按鈕部分代碼:

if (buttonflag.equals("悔棋")) {
// 執行悔棋的操作
//獲取被刪除棋子的顏色
Chess lastChess = (Chess)list.remove(list.size() - 1);
chessFrame.repaint();
Color lastColor = lastChess.color;
if (lastColor == Color.white) {
flagColor = true;
} else if (lastColor == Color.black) {
flagColor = false;
}

//獲取被刪除棋子座標,並根據座標判斷棋子位置ArrayChess[i][j];
   double x = lastChess.x;
   double y = lastChess.y;
   int i =(int)(y+10)/40-1;
   int j =(int)(x+10)/40-1;

                                    //重置數組中被刪除對象對應的數據值爲0
   ArrayChess[i][j]=0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章