如何访问我在名为的主类中创建的 Player 对象,该类使用在名为Program
的类中创建的 JButton Die
?
我现在要去的方向(在尝试了很多不同的方法之后)是在一个名为ButtonListener
.
在我的Player
类里面是一个我想用 JButton 调用的方法:
public void roll(int steps) {
setSteps(steps);
System.out.println("Rolled: " + steps);
move();
}
在我的Die
班级中,我构造了 JButton:
public class Die extends JPanel {
private List<Integer> die = new ArrayList<Integer>();
private ImageIcon one, two, three, roll;
Random rand = new Random();
int dieValue = 0;
Player player = new Player();
JButton dieButton;
/**
* Constructor for creating the die button
*/
public Die(){
addNumbersToDie();
setDieImages();
dieButton = new JButton();
dieButton.addActionListener(new ButtonListener());
dieButton.setIcon(roll);
add(dieButton);
}
这是我的ButtonListener
课:
public class ButtonListener implements ActionListener {
public void actionPerformed(ActionEvent arg0) {
//Call out the roll() method.
}
}
按下按钮时 ActionListener 工作正常,但我还没有找到如何roll(int steps)
在类中调用方法的解决方案Player
......
我可以在 Player 类中创建按钮,但这太麻烦了,所以我正在寻找更好的方法。
整个想法是让玩家使用我的 JButton 移动。
从我的主类中添加了代码Program
:
// Create board.
Board board = new Board();
// Create new player.
Player player = new Player();
// Add player to start.
board.getStart().enterField(player);
// Check if player is on board.
drawBoard(board);