Uma GUI (GUI - Graphical User Interface), Interfaces Gráficas de Usuário**,** permite que você crie janelas, botões, caixas de texto, menus e outros elementos visuais que o usuário pode clicar, digitar e interagir, tornando sua aplicação mais acessível e agradável. Em Java, o kit de ferramentas mais popular e recomendado para criar GUIs é o Swing (que é parte do Java Foundation Classes - JFC), e é nele que vamos nos focar.
Pense em qualquer aplicativo que você usa no seu celular ou computador: um navegador de internet, um editor de texto, um jogo. Todos eles possuem elementos visuais com os quais você interage diretamente. Esses elementos são parte da Interface Gráfica.
Uma GUI em Java é um conjunto de componentes visuais que permitem ao usuário interagir com o programa de forma intuitiva, usando um mouse, teclado ou toque, em vez de apenas digitar comandos no console. O Swing fornece uma vasta biblioteca de componentes para construir essas interfaces.
Leve em consideração:
O Swing é construído sobre uma hierarquia de componentes. Os mais importantes para começar são:
JFrame: É a janela principal da sua aplicação. Tudo o que você vê em uma aplicação Swing deve estar contido em um JFrame (ou outra janela de alto nível).
setSize(), setTitle(), setVisible(), setDefaultCloseOperation().JPanel: É um contêiner leve que você pode usar para agrupar outros componentes (botões, caixas de texto) e organizar o layout dentro de uma janela. É como uma "sub-região" na sua janela.JButton: Um botão clicável que dispara uma ação.JLabel: Um componente para exibir texto ou imagens estáticas (não editáveis pelo usuário).JTextField: Um campo de texto de linha única onde o usuário pode digitar.JTextArea: Um campo de texto que permite múltiplas linhas de entrada.JCheckBox: Uma caixa de seleção que pode ser marcada ou desmarcada.JRadioButton: Um botão de opção, geralmente usado em grupos onde apenas uma opção pode ser selecionada.JComboBox: Uma caixa de combinação (dropdown) que permite ao usuário selecionar um item de uma lista.Uma aplicação Swing geralmente segue estes passos:
JFrame: A janela principal.JFrame: Título, tamanho, operação de fechamento.JFrame (ou JPanel): Posicioná-los na janela.JFrame Visível: Para que a janela apareça na tela.Vamos criar uma janela simples com um título, um tamanho e um botão.
import javax.swing.JFrame; // Importa a classe JFrame para criar a janela
import javax.swing.JButton; // Importa a classe JButton para criar botões
import javax.swing.JPanel; // Importa a classe JPanel para organizar componentes
import java.awt.BorderLayout; // Importa um gerenciador de layout
public class MinhaPrimeiraGUI {
public static void main(String[] args) {
// 1. Criar o JFrame (a janela principal)
JFrame frame = new JFrame("Minha Primeira Janela Swing");
// 2. Definir propriedades do JFrame
frame.setSize(400, 300); // Define o tamanho da janela (largura, altura)
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Define que a aplicação encerra ao fechar a janela
frame.setLocationRelativeTo(null); // Centraliza a janela na tela
// 3. Criar um JPanel para agrupar componentes (boa prática)
JPanel panel = new JPanel();
// 4. Criar um JButton (um botão)
JButton botao = new JButton("Clique-me!");
// 5. Adicionar o botão ao painel
panel.add(botao);
// 6. Adicionar o painel ao JFrame
// Usamos BorderLayout para posicionar o painel no centro do frame
frame.add(panel, BorderLayout.CENTER);
// 7. Tornar o JFrame visível
frame.setVisible(true);
System.out.println("Janela criada e visível!");
}
}