Как сделать макет? (JFrame, JPanel и т. Д.) - PullRequest
1 голос
/ 02 апреля 2019

https://i.stack.imgur.com/wtxDr.png

Я очень новичок в Java Swing и Java в целом (мой класс только что закончил на Scanner и основах).Меня учили только основам Swing, а именно «Что такое JFrame..etc», и я застрял на том, как расположить или расположить вещи.На изображении желаемый макет, и кто-нибудь может мне помочь и научить его кодировать?JFrame с, 5 JPanel компонентов? (4 столбца и форма заказа ниже)

Кроме того, при нажатии кнопки «ПОДТВЕРДИТЬ» я бы хотел, чтобы появилось новое окно.Как бы я мог связать несколько окон?

1 Ответ

2 голосов
/ 04 апреля 2019

Общая стратегия решения сложных вычислительных задач - разбить их на небольшие четко определенные управляемые задачи.Разделяй и властвуй.Это также относится и к графическому интерфейсу: разбейте конструкцию на небольшие, легко разрабатываемые контейнеры.Например:

enter image description here

Вы можете увидеть четыре довольно простых и отличных контейнера с именами headerPane, listPane, inputPane и buttonsPane,mainPane просто перекосит (содержит) эти четыре.Область inputPane разделена на контейнеры, чтобы сделать макет простым.

Идея состоит в том, чтобы сделать каждый макет контейнера простым, легким для отслеживания и изменения.headerPane может быть простым:

JPanel headerPane = new JPanel(); //uses flow layout by default
JLabel header = new JLabel("LUNA BOOKSTORE ORDER FORM", JLabel.CENTER);
headerPane.add(header);

buttonsPane может быть простым:

JPanel buttonsPane = new JPanel(); //uses flow layout by default
buttonsPane.add(new JButton("CONFIRM"));
buttonsPane.add(new JButton("RESET"));
buttonsPane.add(new JButton("EXIT"));

Вы можете увидеть больше примеров применения этой стратегии здесь и здесь .

...