Как Начать Использовать Мастер Swing Gui Intellij Idea. Подробные Инструкции

Прошло много времени с тех пор, как я писал настольные приложения на Java в целом и на Swing в частности.

Однако возникла необходимость в небольшом графическом интерфейсе.

Я выбрал инструмент IntelliJ IDEA Community Edition версии 2016.1. Я занялся лепкой и, естественно, первое, с чем столкнулся — хотя со времен Borland Java Builder 2006 утекло много воды, создавать экранные интерфейсы проще не стало, скорее наоборот. И одной из причин выбора IDEA было именно наличие Swing-конструктора «из коробки», но как им сразу пользоваться совершенно непонятно — форма генерируется, класс создаётся, управляющие переменные создаются из дизайнер.

но и всё: при создании нашего класса форма не появляется, на экране появляется Перерыл интернет, информации примерно ноль.

Люди говорят: «Создайте это и вперед!» Хм… По итогам небольших мытарств на эту тему я решил опубликовать инструкцию, так как, учитывая мой прошлый опыт, мне было гораздо легче искать, чем новичку, впервые лепившему форму в Swing. .



Создание форм Swing GUI с использованием JetBrains IntelliJ IDEA 2016.1

Во-первых, для понимания процесса лучше начать с этого.

Что нужно сделать, так это зайти в меню IDEA «Файл -> Настройки» — там «Редактор -> Дизайнер графического интерфейса» и поставить галочку «Создать GUI Into: в исходном коде Java».

(это немного поможет понять процесс на первом этапе - потом можно будет удалить обратно).



Как начать использовать мастер Swing GUI IntelliJ IDEA. подробные инструкции

Далее откройте дерево исходного кода вашего проекта, щелкните правой кнопкой мыши любую папку или файл исходного кода Java и выберите «Создать -> Диалог» — введите имя класса для формы.



Как начать использовать мастер Swing GUI IntelliJ IDEA. подробные инструкции

В результате мы фактически сгенерировали класс-потомок JDialog (который можно создавать и использовать) и форму для него.

Запускаем наш проект на исполнение и.

о ужас чудо! при компиляции IDEA добавляет дополнительный код в конец нашего файла.

  
  
  
   

{ // GUI initializer generated by IntelliJ IDEA GUI Designer // >>> IMPORTANT!! <<< // DO NOT EDIT OR ADD ANY CODE HERE! $$$setupUI$$$(); } /** * Method generated by IntelliJ IDEA GUI Designer * >>> IMPORTANT!! <<< * DO NOT edit this method OR call it in your code! * * @noinspection ALL */ private void $$$setupUI$$$() { contentPane = new JPanel(); contentPane.setLayout(new com.intellij.uiDesigner.core.GridLayoutManager(2, 1, new Insets(10, 10, 10, 10), -1, -1)); .

} /** * @noinspection ALL */ public JComponent $$$getRootComponent$$$() { return contentPane; }

Несложно догадаться, что вся наша форма Swing настроена с помощью автоматически сгенерированного метода $$$setupUI$$$.

Помните настройку, которую мы установили в самом начале — «GUI Into: -> Исходный код Java».

Если не устанавливать, то этот метод просто появится прямо в файле _class_, минуя java-файл (декомпилируйте, если сомневаетесь - я так и сделал).

Соответственно, вы можете вернуть настройку «GUI Into:» в исходный вид, чтобы этот код (который в любом случае редактировать категорически не рекомендуется) не раздражал глаз.

Теперь, когда мы понимаем, как это работает, перейдем к созданию других форм – не обязательно диалогов.

Снова щелкните правой кнопкой мыши по папке или файлу исходного кода, выберите «Создать -> Форма GUI» — введите имя класса для формы.

Создается класс и форма для него.

Добавляем в форму несколько элементов управления.

В графическом дизайнере смотрим имя корневого элемента (обычно Panel1, если IDEA не задала имя, а такое случается, принудительно — я для наглядности назвал его rootPanel).



Как начать использовать мастер Swing GUI IntelliJ IDEA. подробные инструкции

Перейдем к исходному коду нашего класса.

Так: 1. Добавьте наследование «расширяет JFrame» для нашего класса; 2. Добавьте конструктор класса со строками:

setContentPane(panel1); setVisible(true);

Окончательный код класса

public class GUIFrame extends JFrame{ private JButton button1; private JPanel rootPanel; public GUIFrame() { setContentPane(rootPanel); setVisible(true); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); } public static void main(String[] args) { new GUIFrame(); } }

Все.

Форма готова к использованию.

Остальное смотрите в многочисленных инструкциях по Swing. P.S. Как вариант, можно не наследовать наш класс от JFrame, а создать конструктор вида:

JFrame frame = new JFrame(); frame.setContentPane(panel1); frame.setVisible(true);

Этот вариант тоже работает — возможно, кому-то он будет полезен.

Теги: #GUI Swing Designer IntelliJ IDEA #java

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.