Program
이라는 메인 클래스에서 만든 플레이어 객체에 액세스하려면 어떻게해야합니까? Die
클래스에 JButton이 만들어 졌습니까?JButton으로 플레이어 개체를 이동하는 방법은 무엇입니까?
많은 다양한 방법으로 실험 한 후에 지금 방향은 ButtonListener
이라는 별도의 클래스에 ActionListener를 만드는 것입니다. JButton에 내 Die
클래스 내부
public void roll(int steps) {
setSteps(steps);
System.out.println("Rolled: " + steps);
move();
}
내가 구성 : 내 Player
클래스의 내부
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.
}
}
버튼을 눌렀을 때 ctionListener가 제대로 작동하지만 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);
만 문제는 내가 새로운 플레이어 페이지 참조 만들 것입니다,하지만 난 메인 프로그램 클래스에 정의 된 선수라는 플레이어가 이동할 수 있도록해야합니다
은 그럼 그냥 않습니다. 또한 보드 객체에 플레이어 객체를 추가했기 때문에 (내 프로그램 클래스의 코드를 내 질문에 추가했습니다). –
하지만 하나의 버튼/플레이어가 있습니까? 나는 네가 의미하는 것을 얻지 못한다. =) 이걸 좀 더 명확히 해줄 수 있니? –
나는 그것을 설명했다고 생각했지만 네, 한 명의 플레이어와 하나의 버튼이 있습니다. –