GUI Com Java Swing
O pacote javax.swing
oferece uma ampla gama de componentes gráficos para criar interfaces gráficas de usuário (GUIs) no Java. Esses componentes são conhecidos como JComponents e fornecem uma base para criar interfaces modernas e funcionais. Aqui está uma visão geral dos principais JComponents:
1. Contêineres
Os contêineres são JComponents usados para organizar outros componentes dentro de uma janela.
JFrame: Representa a janela principal da aplicação. Pode conter outros componentes.
Exemplo: Uma janela com barra de título, bordas e botões de minimizar, maximizar e fechar.
Uso:
java code snippet start
JFrame frame = new JFrame("Minha Janela"); frame.setSize(400, 300); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true);
java code snippet end
JPanel: Um contêiner genérico que agrupa componentes. Geralmente usado para organizar layouts dentro de uma
JFrame
.Uso:
java code snippet start
JPanel panel = new JPanel(); panel.add(new JButton("Botão")); frame.add(panel);
java code snippet end
JScrollPane: Fornece uma área rolável para outros componentes, como tabelas ou texto.
Uso:
java code snippet start
JTextArea textArea = new JTextArea(20, 30); JScrollPane scrollPane = new JScrollPane(textArea); frame.add(scrollPane);
java code snippet end
2. Componentes de Entrada
Estes componentes permitem a interação direta do usuário.
JButton: Um botão clicável.
Uso:
java code snippet start
JButton button = new JButton("Clique Aqui");
java code snippet end
JTextField: Uma caixa de texto para entrada de texto de uma única linha.
Uso:
java code snippet start
JTextField textField = new JTextField(20);
java code snippet end
JPasswordField: Semelhante ao
JTextField
, mas oculta o texto digitado.Uso:
java code snippet start
JPasswordField passwordField = new JPasswordField(20);
java code snippet end
JTextArea: Uma área de texto para múltiplas linhas.
Uso:
java code snippet start
JTextArea textArea = new JTextArea(5, 20);
java code snippet end
JCheckBox: Uma caixa de seleção.
Uso:
java code snippet start
JCheckBox checkBox = new JCheckBox("Opção 1");
java code snippet end
JRadioButton: Um botão de opção que faz parte de um grupo.
Uso:
java code snippet start
JRadioButton radioButton = new JRadioButton("Opção A"); ButtonGroup group = new ButtonGroup(); group.add(radioButton);
java code snippet end
JComboBox: Um menu suspenso que permite selecionar uma opção.
Uso:
java code snippet start
JComboBox<String> comboBox = new JComboBox<>(new String[] {"Opção 1", "Opção 2"});
java code snippet end
JSpinner: Um campo de entrada com controles incrementais/decrementais.
Uso:
java code snippet start
JSpinner spinner = new JSpinner();
java code snippet end
3. Componentes de Exibição
Estes componentes exibem informações ao usuário.
JLabel: Exibe texto ou imagens.
Uso:
java code snippet start
JLabel label = new JLabel("Texto informativo");
java code snippet end
JTable: Exibe dados em formato tabular.
Uso:
java code snippet start
JTable table = new JTable(data, columnNames);
java code snippet end
JProgressBar: Mostra o progresso de uma tarefa.
Uso:
java code snippet start
JProgressBar progressBar = new JProgressBar(0, 100); progressBar.setValue(50);
java code snippet end
4. Menus e Barras de Ferramentas
Componentes para criar menus e barras de ferramentas.
JMenuBar: Barra de menus para a janela.
Uso:
java code snippet start
JMenuBar menuBar = new JMenuBar(); JMenu menu = new JMenu("Arquivo"); menuBar.add(menu); frame.setJMenuBar(menuBar);
java code snippet end
JToolBar: Uma barra de ferramentas.
Uso:
java code snippet start
JToolBar toolBar = new JToolBar(); toolBar.add(new JButton("Ferramenta 1"));
java code snippet end
5. Componentes Avançados
Componentes para casos mais específicos.
JTabbedPane: Gerencia painéis com guias.
Uso:
java code snippet start
JTabbedPane tabbedPane = new JTabbedPane(); tabbedPane.addTab("Aba 1", new JPanel());
java code snippet end
JTree: Exibe dados hierárquicos em formato de árvore.
Uso:
java code snippet start
JTree tree = new JTree();
java code snippet end
JList: Exibe uma lista de itens.
Uso:
java code snippet start
JList<String> list = new JList<>(new String[] {"Item 1", "Item 2"});
java code snippet end
6. Utilitários e Estilo
UIManager: Permite alterar o tema ou aparência dos componentes Swing.
Uso:
java code snippet start
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
java code snippet end
ToolTipText: Adiciona dicas informativas aos componentes.
Uso:
java code snippet start
button.setToolTipText("Clique para executar a ação");
java code snippet end