我試圖確保在我的記憶遊戲中,一旦有人選擇了兩張牌。他們是可見的,只要他們選擇第三張牌,前兩張牌就不再可見。如何在2個按鈕被選中後取消選擇一個按鈕JToggleButton
下面是我實現的ActionPerformed方法。
public void actionPerformed(ActionEvent e){
cardsSelected++;
int row=0;
int column=0;
int row2=0;
int column2=0;
if(cardsSelected == 3){
card1.setSelected(false);
card2.setSelected(false);
card1 = null;
card2 = null;
cardsSelected = 1;
}
if(card1 == null){
card1 = (Cell) e.getSource();
card1.setSelected(true);
row = card1.getRow();
column = card1.getColumn();
board[row][column].setIcon2();
}
else if(card2 == null){
card2 = (Cell) e.getSource();
card2.setSelected(true);
row = card2.getRow();
column = card2.getColumn();
board[row][column].setIcon2();
}
if(card1 != null && card2 != null){
numTries++;
if(card1.sameType(card2)){
row = card1.getRow();
column = card1.getColumn();
row2 = card2.getRow();
column2 = card2.getRow();
if(row != row2 && column != column2){
board[row][column].setVisible(false);
board[row2][column2].setVisible(false);
card1=null;
card2=null;
}
}
}
}
任何見識將非常歡迎! 謝謝大家! Mjall2
我自己,我會使用擺動計時器來顯示XX毫秒不正確的選擇對,然後覆蓋它們。這是大多數這些類型的遊戲運行的方式,並允許用戶重新選擇剛選擇的項目。另外,請考慮改進您的「創意」縮進。這不僅僅是爲了讓你的代碼看起來很漂亮,而且還有助於其他人(換句話說,我們*)更好地理解你的代碼。 – 2012-02-28 23:20:21
爲了更好地提供幫助,請發佈[SSCCE](http://sscce.org/)。 – 2012-02-29 05:20:20