在代码的不同部分,我将运行以下类似的变体:
_grid[4][4].addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
moveBeginningPieceLeft(_square[4][11]);
refreshBoard();
}
});
唯一会改变的是_grid的坐标。我尝试在做动作侦听器的早期做某事,但是日食迫使我将整数定为最终值。我想知道是否容易编写使用被调用的网格值的addListener方法(_grid是JButtons的数组,而_square是堆栈的数组)。因此,如果我在_grid [2] [5]上调用addListener,它将仅从_grid获取坐标[2] [5]并将其放置在actionlistener的_square部分中。所以,
_grid[0][5].addListener();
是相同的
_grid[0][5].addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
moveBeginningPieceLeft(_square[0][5]);
refreshBoard();
}
});
最佳答案
我想知道编写使用以下内容的addListener方法是否容易
被调用的网格的值(_grid是一个数组
JButtons和_square是堆栈数组)。
不,没有
我曾尝试过做动作侦听器的早期工作,但是
蚀迫使我将整数定为最终值。
声明必需的vasriable作为局部变量
使用put/getClientProperty有关最简单方法的示例,您可以将此方法与另一个附加值进行多重播放
为了更好地提供帮助,请尽快发布SSCCE,简短,可运行,可编译,简化且仅关于JButton网格