Привет! Сегодня я расскажу тебе о том‚ как создать приложение на языке Java с использованием библиотеки Swing и менеджера компоновки GridLayout‚ которое отображает чёрно-белую шахматную доску из объектов JPanel. Я сам опробовал этот метод и готов поделиться с тобой своим опытом.Для начала‚ нам понадобится создать двумерный массив JPanel‚ который будет представлять собой нашу шахматную доску. Для того чтобы создать черные и белые клетки‚ нам нужно понять‚ какая закономерность есть у координат этих клеток. Я решил использовать двойной цикл for‚ чтобы создать все необходимые клетки. Координаты черных и белых клеток определяются условным делением на 2. Если результат деления четный‚ то клетка будет черной‚ а если нечетный‚ то клетка будет белой.
Вот как выглядит код‚ который я использовал для создания шахматной доски⁚
java
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class ChessBoard extends JFrame {
private JPanel[][] panels;
public ChessBoard {
super(″Шахматная доска″);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new GridLayout(8‚ 8));
panels new JPanel[8][8];
for (int i 0; i < 8; i ) {
for (int j 0; j < 8; j ) {
panels[i][j] new JPanel;
if ((i j) % 2 0) {
panels[i][j].setBackground(Color.BLACK);
} else {
panels[i][j].setBackground(Color.WHITE);
}
panels[i][j].addMouseListener(new MouseAdapter {
@Override
public void mouseEntered(MouseEvent e) {
JPanel panel (JPanel) e.getComponent;
panel.setBorder(BorderFactory.createLineBorder(Color.GREEN));
}
@Override
public void mouseExited(MouseEvent e) {
JPanel panel (JPanel) e.getComponent;
panel.setBorder(null);
}
});
add(panels[i][j]);
}
}
setSize(400‚ 400);
setVisible(true);
}
public static void main(String[] args) {
new ChessBoard;
}
}
В этом коде мы создаем окно приложения с названием ″Шахматная доска″ и устанавливаем GridLayout с размерами 8 на 8. Затем мы создаем двумерный массив JPanel и заполняем его объектами JPanel‚ задавая цвет каждой клетке в зависимости от ее координат. Далее мы добавляем слушателей мыши для каждой панели‚ чтобы отображать зеленую границу при наведении курсора мыши на клетку и удалять ее при уходе курсора мыши.
Надеюсь‚ эта статья была полезной для тебя и поможет тебе создать свою собственную шахматную доску на языке Java с использованием библиотеки Swing. Удачи в твоих программистских приключениях!