#java #jpanel #grid-layout
#java #jpanel #сетка-макет
Вопрос:
Я создаю Tetris для школьного проекта и пытаюсь выяснить, как создать сетку внутри JPanel. Сетка будет состоять из 10 строк и 22 столбцов. У меня есть доска классов, которая содержит всю игровую логику. Моя роль заключается в реализации класса в графике.
public class Board extends JPanel {
...
public Board() {
....
setLayout(new GridLayout(10,22));
setFocusable(true);
Затем я бы добавил эту панель в JFrame, состоящий из других панелей, но панель платы не отображается. Как я могу показать видимую плату, вложенную в JPanel, даже если у меня на самом деле внутри нее ничего нет?
Ответ №1:
Вы должны использовать border. Пример;
JPanel panel = new JPanel(new GridLayout(10,10));
panel.setBorder(BorderFactory.createEmptyBorder(2,2,2,2));
for (int i =0; i<(10*10); i ){
final JLabel label = new JLabel("Label");
label.setBorder(BorderFactory.createLineBorder(Color.BLACK));
panel.add(label);
}