Swing em Java: saiba como criar GUI com exemplos



: ganhe o conceito de swing em java com hierarquia de classes de swing e gerenciador de layout com uma demonstração prática de aplicação GUI.

Swing em java é parte da classe de base Java que é leve e independente de plataforma. Ele é usado para criar aplicativos baseados em janela. Inclui componentes como botão, barra de rolagem, campo de texto, etc. Juntar todos esses componentes cria uma interface gráfica do usuário. Neste artigo, vamos percorrer os conceitos envolvidos no processo de construção de aplicativos usando o swing em . A seguir estão os conceitos discutidos neste artigo:

O que é Swing em Java?

Swing em Java é um kit de ferramentas GUI leve que possui uma ampla variedade de widgets para construir aplicativos baseados em janela otimizados. É uma parte do JFC (Java Foundation Classes). É construído sobre a API AWT e inteiramente escrito em . É independente de plataforma ao contrário do AWT e possui componentes leves.





Torna-se mais fácil construir aplicativos, uma vez que já temos componentes da GUI como botão, caixa de seleção, etc. Isso é útil porque não precisamos começar do zero.

Classe de contêiner

Qualquer que possui outros componentes, é chamada de classe de contêiner. Para construir aplicativos GUI, pelo menos uma classe de contêiner é necessária.



A seguir estão os três tipos de classes de contêiner:

  1. Painel - É usado para organizar componentes em uma janela

  2. Frame - uma janela totalmente funcional com ícones e títulos



  3. Diálogo - É como uma janela pop-up, mas não totalmente funcional como o quadro

Diferença entre AWT e Swing

AWT BALANÇO
  • Dependente de plataforma
  • Plataforma independente
  • Não segue MVC
  • Segue MVC
  • Componentes Menores
  • Componentes mais poderosos
  • Não suporta aparência e comportamento plugáveis
  • Suporta aparência e comportamento plugáveis
  • Peso pesado
  • Leve

Hierarquia de classe Java Swing

hierarquia-swing em java-edureka

Explicação : Todos os componentes em movimento como JButton, JComboBox, JList, JLabel são herdados da classe JComponent que pode ser adicionada às classes de contêiner. Os contêineres são as janelas como moldura e caixas de diálogo. Os componentes básicos de giro são os blocos de construção de qualquer aplicação GUI. Métodos como setLayout substituem o layout padrão em cada contêiner. Recipientes como JFrame e JDialog só podem adicionar um componente a si mesmo. A seguir estão alguns componentes com exemplos para entender como podemos usá-los.

Classe JButton

É usado para criar um botão rotulado. Usar o ActionListener resultará em alguma ação quando o botão for pressionado. Ele herda a classe AbstractButton e é independente de plataforma.

Exemplo:

import javax.swing. * public class example {public static void main (String args []) {JFrame a = new JFrame ('example') JButton b = new JButton ('click me') b.setBounds (40,90, 85,20) a.add (b) a.setSize (300,300) a.setLayout (null) a.setVisible (true)}}

Resultado:

como usar o navegador sqlite

Classe JTextField

Ele herda a classe JTextComponent e é usado para permitir a edição de texto de uma única linha.

Exemplo:

import javax.swing. * public class example {public static void main (String args []) {JFrame a = new JFrame ('example') JTextField b = new JTextField ('edureka') b.setBounds (50,100,200,30) a .add (b) a.setSize (300,300) a.setLayout (null) a.setVisible (true)}}

Resultado:

Classe JScrollBar

É usado para adicionar barra de rolagem, tanto horizontal quanto vertical.

Exemplo:

import javax.swing. * class example {example () {JFrame a = new JFrame ('example') JScrollBar b = new JScrollBar () b.setBounds (90,90,40,90) a.add (b) a. setSize (300,300) a.setLayout (null) a.setVisible (true)} public static void main (String args []) {novo exemplo ()}}

Resultado:

aplicações de análise de big data

Classe JPanel

Ele herda a classe JComponent e fornece espaço para um aplicativo que pode anexar qualquer outro componente.

import java.awt. * import javax.swing. * public class Exemplo {Exemplo () {JFrame a = new JFrame ('exemplo') JPanel p = new JPanel () p.setBounds (40,70,200,200) JButton b = new JButton ('click me') b.setBounds (60,50,80,40) p.add (b) a.add (p) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public static void main (String args []) {new Example ()}}

Resultado:

JMenu Clas s

Ele herda a classe JMenuItem e é um componente de menu suspenso que é exibido na barra de menus.

import javax.swing. * class Exemplo {JMenu menu JMenuItem a1, a2 Exemplo () {JFrame a = new JFrame ('Exemplo') menu = new JMenu ('options') JMenuBar m1 = new JMenuBar () a1 = novo JMenuItem ( 'exemplo') a2 = novo JMenuItem ('exemplo1') menu.add (a1) menu.add (a2) m1.add (menu) a.setJMenuBar (m1) a.setSize (400,400) a.setLayout (nulo) a .setVisible (true)} public static void main (String args []) {new Example ()}}

Resultado:

Classe JList

Ele herda a classe JComponent, o objeto da classe JList representa uma lista de itens de texto.

import javax.swing. * public class Exemplo {Exemplo () {JFrame a = new JFrame ('exemplo') DefaultListModel l = new DefaultListModel () l.addElement ('primeiro item') l.addElement ('segundo item') JList b = new JList (l) b.setBounds (100,100,75,75) a.add (b) a.setSize (400,400) a.setVisible (true) a.setLayout (null)} public static void main (String args [ ]) {novo exemplo ()}}

Resultado:

Classe JLabel

É usado para colocar texto em um contêiner. Ele também herda a classe JComponent.

import javax.swing. * public class Exemplo {public static void main (String args []) {JFrame a = new JFrame ('exemplo') JLabel b1 b1 = new JLabel ('edureka') b1.setBounds (40,40, 90,20) a.add (b1) a.setSize (400,400) a.setLayout (null) a.setVisible (true)}}

Resultado:

framework orientado a dados em exemplo de webdriver selênio

Classe JComboBox

Ele herda a classe JComponent e é usado para mostrar o menu pop-up de opções.

import javax.swing. * public class Exemplo {JFrame a Example () {a = new JFrame ('exemplo') string cursos [] = {'core java', 'advance java', 'java servlet'} JComboBox c = new JComboBox (cursos) c.setBounds (40,40,90,20) a.add (c) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public static void main (String args [] ) {novo exemplo ()}}

Resultado:

Gerente de Layout

Para organizar os componentes dentro de um container, usamos o gerenciador de layout. A seguir estão vários gerenciadores de layout:

  1. Layout de borda

  2. Layout de fluxo

  3. Layout GridBag

Layout de borda

O gerenciador de layout padrão para cada JFrame é BorderLayout. Ele coloca os componentes em até cinco lugares, que são superior, inferior, esquerdo, direito e centro.

Layout de fluxo

O FlowLayout simplesmente coloca os componentes em uma linha, um após o outro, é o gerenciador de layout padrão para cada JPanel.

Layout GridBag

GridBagLayout coloca os componentes em uma grade que permite que os componentes ocupem mais de uma célula.

Exemplo: quadro de bate-papo

import javax.swing. * import java.awt. * class Exemplo {public static void main (String args []) {JFrame frame = new JFrame ('Chat Frame') frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) frame.setSize (400 , 400) JMenuBar ob = novo JMenuBar () JMenu ob1 = novo JMenu ('ARQUIVO') JMenu ob2 = novo JMenu ('Ajuda') ob.add (ob1) ob.add (ob2) JMenuItem m11 = novo JMenuItem ('Abrir ') JMenuItem m22 = new JMenuItem (' Salvar como ') ob1.add (m11) ob1.add (m22) Painel JPanel = new JPanel () // o painel não é visível na saída JLabel label = new JLabel (' Digite o texto ') JTextField tf = new JTextField (10) // aceita até 10 caracteres JButton send = new JButton (' Send ') JButton reset = new JButton (' Reset ') panel.add (label) // Componentes adicionados usando o painel Flow Layout .add (label) // Componentes adicionados usando Flow Layout panel.add (tf) panel.add (send) panel.add (reset) JTextArea ta = new JTextArea () frame.getContentPane (). add (BorderLayout.SOUTH, panel ) frame.getContentPane (). add (BorderLayout.NORTH, tf) frame.getContentPane (). add (Border Layout.CENTER, ta) frame.setVisible (true)}}

Este é um exemplo simples de criação de GUI usando swing em Java.

Neste artigo, discutimos o swing em Java e a hierarquia das classes de swing Java. Com todos os componentes que vêm com o swing em Java, fica mais fácil construir aplicativos GUI otimizados. A linguagem de programação Java é uma linguagem de programação estruturada e com a crescente demanda torna-se extremamente importante dominar todos os conceitos em . Para começar seu aprendizado e se tornar um especialista em programação java, inscreva-se no curso de Edureka .

Tem alguma questão para nós? mencione isso na seção de comentários deste artigo ‘Swing em Java’ e entraremos em contato com você o mais rápido possível.