Java Учебник Swing: как создать приложение с графическим интерфейсом пользователя Java

Что такое Swing in? Java?

Заходи Java это набор инструментов графического пользовательского интерфейса (GUI), который включает компоненты GUI. Swing предоставляет богатый набор виджетов и пакетов для создания сложных компонентов GUI для Java приложения. Swing является частью Java Foundation Classes(JFC), который представляет собой API для Java Программирование графического пользовательского интерфейса, обеспечивающее графический интерфейс.

Территория Java Библиотека Swing создана на основе Java Набор инструментов абстрактных виджетов (АВТ), более старый, зависящий от платформы набор инструментов графического интерфейса. Вы можете использовать Java простые компоненты программирования графического интерфейса пользователя, такие как кнопки, текстовые поля и т. д., из библиотеки, и нет необходимости создавать компоненты с нуля.

В этом Java Учебник по свингу, вы узнаете Java Основы графического интерфейса, такие как:

Java Диаграмма иерархии класса Swing

Java Диаграмма иерархии классов Swing
Java Диаграмма иерархии классов Swing

Все компоненты в Java Swing — это JComponent, который можно добавлять в классы контейнеров.

Что такое класс контейнера?

Классы-контейнеры — это классы, в которых могут быть другие компоненты. Итак, для создания Java Swing GUI, нам нужен как минимум один объект контейнера. Существует 3 типа Java Контейнеры-качалки.

  1. Панель: Это чистый контейнер, а не окно само по себе. Единственная цель панели — организовать компоненты в окне.
  2. Корзина: Это полностью функционирующее окно со своим заголовком и значками.
  3. Диалог: его можно рассматривать как всплывающее окно, которое появляется, когда необходимо отобразить сообщение. Это не полнофункциональное окно, такое как Frame.

Что такое графический интерфейс Java?

GUI (графический интерфейс пользователя) в Java — это простой в использовании визуальный конструктор для Java приложения. Он в основном состоит из графических компонентов, таких как кнопки, метки, окна и т. д., через которые пользователь может взаимодействовать с приложением. GUI играет важную роль в создании простых интерфейсов для Java приложений.

Как сделать графический интерфейс в Java с примером

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

Шаг 1) Скопируйте код в редактор
На первом этапе скопируйте следующий код в редактор.

import javax.swing.*;
class gui{
    public static void main(String args[]){
       JFrame frame = new JFrame("My First GUI");
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       frame.setSize(300,300);
       JButton button = new JButton("Press");
       frame.getContentPane().add(button); // Adds Button to content pane of frame
       frame.setVisible(true);
    }
}

Шаг 2) Запустите код
Следующий шаг: сохраните, скомпилируйте и запустите код.

Шаг 3) Скопируйте следующий код в редактор
Теперь давайте добавим кнопку в наш фрейм. Скопируйте следующий код в редактор из указанного Java Пример пользовательского интерфейса

import javax.swing.*;
   class gui{
      public static void main(String args[]){
        JFrame frame = new JFrame("My First GUI");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300,300);
       JButton button1 = new JButton("Press");
       frame.getContentPane().add(button1);
       frame.setVisible(true);
     }
}

Шаг 4) Выполнить код
Далее выполните код. У вас получится большая кнопка.


Java Пример графического интерфейса

Шаг 5) Добавьте две кнопки

Как насчет добавления двух кнопок? Скопируйте следующий код в редактор.

import javax.swing.*;
class gui{
      public static void main(String args[]){
           JFrame frame = new JFrame("My First GUI");
           frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
           frame.setSize(300,300);
          JButton button1 = new JButton("Button 1");
          JButton button2 = new JButton("Button 2");
          frame.getContentPane().add(button1);
          frame.getContentPane().add(button2);
          frame.setVisible(true);
     }
}

Шаг 6) Сохраните и запустите программу
Далее сохраните, скомпилируйте и запустите программу.

Шаг 7) Проверить вывод
Неожиданный результат =? Кнопки перекрываются.

Java Layout Manager

Менеджер макетов используется для макетирования (или упорядочения) графического интерфейса. Java компоненты внутри контейнера. Существует множество менеджеров макетов, но наиболее часто используемые из них:

Java ГраницаLayout

A BorderLayout размещает компоненты в пяти областях: сверху, снизу, слева, справа и в центре. Это менеджер макетов по умолчанию для каждого Java JFrame.

Java ГраницаLayout

Java ГраницаLayout

Java Флолайаут

FlowLayout является менеджером макетов по умолчанию для каждого JPanel. Он просто раскладывает компоненты в один ряд один за другим.

Java Флолайаут

Java Флолайаут

Java СеткаМешокМакет

Это более сложная из всех планировок. Он выравнивает компоненты, помещая их в сетку ячеек, позволяя компонентам охватывать более одной ячейки.

Java СеткаМешокМакет

Java СеткаМешокМакет

Шаг 8) Создать фрейм чата
Как насчет создания рамки чата, как показано ниже?


Пример Java Графический интерфейс пользователя

Попробуйте написать код самостоятельно, прежде чем смотреть программу ниже.

//Usually you will require both swing and awt packages
// even if you are working with just swings.
import javax.swing.*;
import java.awt.*;
class gui {
    public static void main(String args[]) {

        //Creating the Frame
        JFrame frame = new JFrame("Chat Frame");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(400, 400);

        //Creating the MenuBar and adding components
        JMenuBar mb = new JMenuBar();
        JMenu m1 = new JMenu("FILE");
        JMenu m2 = new JMenu("Help");
        mb.add(m1);
        mb.add(m2);
        JMenuItem m11 = new JMenuItem("Open");
        JMenuItem m22 = new JMenuItem("Save as");
        m1.add(m11);
        m1.add(m22);

        //Creating the panel at bottom and adding components
        JPanel panel = new JPanel(); // the panel is not visible in output
        JLabel label = new JLabel("Enter Text");
        JTextField tf = new JTextField(10); // accepts upto 10 characters
        JButton send = new JButton("Send");
        JButton reset = new JButton("Reset");
        panel.add(label); // Components Added using Flow Layout
        panel.add(tf);
        panel.add(send);
        panel.add(reset);

        // Text Area at the Center
        JTextArea ta = new JTextArea();

        //Adding Components to the frame.
        frame.getContentPane().add(BorderLayout.SOUTH, panel);
        frame.getContentPane().add(BorderLayout.NORTH, mb);
        frame.getContentPane().add(BorderLayout.CENTER, ta);
        frame.setVisible(true);
    }
}