Проблема с вызовом метода из JFrame - PullRequest
0 голосов
/ 22 января 2020

Привет, у меня есть два кода, один расширяет JFrame, потому что это JFrame. Класс Other должен получить доступ к методу publi c из этого JFrame, чтобы распознать некоторые значки на этой панели Jframe. В настоящее время я пытаюсь получить доступ к этому методу без вызова или повторной инициализации самого JFrame. Вместо этого я хотел бы знать, есть ли способ доступа к методу в панели JFrame без необходимости повторного открытия фрейма, поскольку он уже инициализирован.

public class GridLayoutManager extends JFrame {

private Container contents;

private JButton[][] squares = new JButton[8][8];

private Color colorBlack = Color.darkGray;
private Color colorWhite = Color.white;
// Knight Images
private ImageIcon BlackKnight;
private ImageIcon WhiteKnight;

public GridLayoutManager() {
    super("Chess");
    contents = getContentPane();
    contents.setLayout(new GridLayout(8, 8));

    for (int i = 0; i < 8; i++) {

        for (int j = 0; j < 8; j++) {
            squares[i][j] = new JButton();


            if ((i + j) % 2 != 0) {
                squares[i][j].setBackground(colorBlack);
            } else {
                squares[i][j].setBackground(colorWhite);
            }

            contents.add(squares[i][j]);
            squares[i][j].addActionListener(buttonHandler);
        }
    }

    squares[knight.row][knight.columns].setIcon(BlackKnight);
    squares[knight.row2][knight.columns2].setIcon(BlackKnight);

    setSize(500, 500);
    setResizable(false);
    setLocationRelativeTo(null);
    setVisible(true);

    addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
            System.exit(0);
        }
    });
}
public JButton[][] gridLayout() {
    return squares;

}
}

и

public class BishopMovement {
}

Мне известно о доступе к JFrame с помощью этой строки кода:

GridLayoutManager squares = new GridLayoutManager().gridLayout()

Однако это снова инициализирует JFrame, и это недопустимо. Есть ли способ получить этот метод без инициализации JFrame?

...