[英]Access Parent Class Object from a child class
我正在創建一個帶有 GUI 的連接四游戲,但我被困在重新啟動游戲上。 我的目標是當用戶按下 MyBoard JPanel 上的重新啟動按鈕時,游戲將重新啟動。 我正在使用 mouseListener 並且我想從子類 MyBoard 訪問對象面板。
public class Mediator(){
public Mediator(){
MyBoard panel = new MyBoard();
JFrame board = new JFrame("Connect4");
board.setSize(728, 728);
board.setLocationRelativeTo(null);
board.add(panel);
board.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
board.setVisible(false);
board.setFocusable(true);
board.setResizable(false);
}
}
public class MyBoard extends JPanel implements MouseListener, MouseMotionListener {
public MyBoard( ) {}
@Override
public void mouseClicked(MouseEvent e) {
startX = e.getX();
startY = e.getY();
//Restart Button
if (startX > rectButton1.x && startX < rectButton1.x + rectButton1.width && startY > rectButton1.y
&& startY < rectButton1.y + rectButton1.height) {
//I'm stuck here
}
創建 MyBoard 時使用對 Mediator 的引用
public class Mediator(){
public Mediator(){
MyBoard panel = new MyBoard(this);
...
public class MyBoard extends JPanel implements MouseListener, MouseMotionListener {
private Mediator mediator;
public MyBoard(Mediator mediator) {
this.mediator = mediator;
...
此外,您可能必須將新板的構造移動到方法重新啟動,而不是在 Mediator 構造函數中進行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.