2014-02-17 90 views
0

所以,我正在使用GridLayouttictactoetile的一個項目,這是一個擴展JButton類的項目。 對於我試圖做的第一件事,我想知道點擊了哪個按鈕,然後將該按鈕的文本設置爲等於x或o,具體取決於它是哪一個。我有這樣的邏輯,我只是​​不知道如何獲得點擊的按鈕的行和列。 對不起,如果措辭不好。處理tictactoe檢測按鈕

+0

你能將座標存儲爲'TicTacToeTile'的字段嗎? –

+0

假設你使用的是ActionListener,你就可以訪問生成事件的'source' ... – MadProgrammer

+0

我假設你的意思是evt.getsource(),這是我想用的,但我可以'弄清楚如何應用它。 – user3316794

回答

0
public class tictactoetile extends JButton implements ActionListener { 

    private int cory; 
    private int corx; 
    //Create your own GameObj class with the necessary members 
    //Some examples for members below... 
    private GameObj game; 

    public tictactoetile(int x,int y,GameObj gam) { 
     cory = y; 
     corx = x; 
     game = gam; 
     super(); 
    } 

    public void actionPerformed(ActionEvent e) { 
     this.setText(game.getTurnMarker()); //returns either x or o 
     game.updateGameState(game.getTurn(),cory,corx); 
     game.nextTurn(); 
    } 
}