Introdução aos componentes Swing em Java
Os componentes de giro são os componentes básicos de um aplicativo. Sabemos que o Swing é um kit de ferramentas de widget da GUI para Java. Todo aplicativo possui alguma interface interativa básica para o usuário. Por exemplo, um botão, caixa de seleção, botão de opção, campo de texto etc. Eles juntos formam os componentes no Swing.
Portanto, para resumir, os componentes Swing são os elementos interativos em um aplicativo Java. Veremos vários componentes Swing neste artigo e alguns exemplos. Observe que os exemplos são trechos de código simples. Você pode usá-los em seu aplicativo e adequá-los à sua arquitetura de aplicativos.
Os 13 principais componentes do Swing em Java
Abaixo estão os diferentes componentes do swing em java:
1. ImageIcon
O componente ImageIcon cria uma imagem dimensionada para um ícone a partir de uma imagem que reside no URL de origem.
Exemplo:
ImageIcon homeIcon = new ImageIcon(“src/images/home.jpg.webp”);
Isso retorna um ícone de um botão home. O parâmetro string é o caminho no qual a imagem de origem está presente.
Nota: Usaríamos este ícone de imagem em mais exemplos.2. JButton
A classe JButton é usada para criar um botão na interface do usuário. O botão pode conter algum texto ou imagem no visor. Ele gera um evento quando clicado e clicado duas vezes. Um JButton pode ser implementado no aplicativo chamando um de seus construtores.
Exemplo:
JButton okBtn = new JButton(“Ok”);
Este construtor retorna um botão com o texto Ok.
JButton homeBtn = new JButton(homeIcon);
Retorna um botão com um homeIcon.
JButton btn2 = new JButton(homeIcon, “Home”);
Retorna um botão com o ícone de início e o texto de início .
3. JLabel
A classe JLabel é usada para renderizar um rótulo ou imagens de texto somente leitura na interface do usuário. Não gera nenhum evento.
Exemplo:
JLabel textLbl = new JLabel(“This is a text label.”);
Este construtor retorna um rótulo com texto.
JLabel imgLabel = new JLabel(homeIcon);
Retorna um rótulo com um ícone inicial.
4. JTextField
O JTextField renderiza uma caixa de texto editável de linha única. Um usuário pode inserir texto não formatado na caixa. Para inicializar o campo de texto, chame seu construtor e passe um parâmetro inteiro opcional para ele. Este parâmetro define a largura da caixa medida pelo número de colunas. Não limita o número de caracteres que podem ser inseridos na caixa.
Exemplo:
JTextField txtBox = new JTextField(20);
Renderiza uma caixa de texto com 20 colunas de largura.
5. JTextArea
A classe JTextArea renderiza uma caixa de texto com várias linhas. Semelhante ao JTextField, um usuário pode inserir texto não formatado no campo. O construtor para JTextArea também espera dois parâmetros inteiros que definem a altura e a largura da área de texto nas colunas. Ele não restringe o número de caracteres que o usuário pode inserir na área de texto.
Exemplo:
JTextArea txtArea = new JTextArea(“This text is default text for text area.”, 5, 20);
O código acima renderiza uma área de texto com várias linhas de altura 5 linhas e largura 20 colunas, com o texto padrão inicializado na área de texto.
6. JPasswordField
JPasswordField é uma subclasse da classe JTextField. Renderiza uma caixa de texto que mascara o texto de entrada do usuário com marcadores. Isso é usado para inserir senhas no aplicativo.
Exemplo:
JPasswordField pwdField = new JPasswordField(15);
var pwdValue = pwdField.getPassword();
Retorna um campo de senha com 15 colunas de largura. O método getPassword obtém o valor digitado pelo usuário.
7. JCheckBox
JCheckBox renderiza uma caixa de seleção com um rótulo. A caixa de seleção possui dois estados - ativado / desativado. Quando selecionado, o estado está ativado e um pequeno tique é exibido na caixa.
Exemplo:
CheckBox chkBox = new JCheckBox(“Show Help”, true);
Retorna uma caixa de seleção com o rótulo Mostrar Ajuda. Observe o segundo parâmetro no construtor. É um valor booleano que indica o estado padrão da caixa de seleção. Verdadeiro significa que a caixa de seleção está padronizada no estado.
8. JRadioButton
JRadioButton é usado para renderizar um grupo de botões de opção na interface do usuário. Um usuário pode selecionar uma opção no grupo.
Exemplo:
ButtonGroup radioGroup = new ButtonGroup();
JRadioButton rb1 = new JRadioButton(“Easy”, true);
JRadioButton rb2 = new JRadioButton(“Medium”);
JRadioButton rb3 = new JRadioButton(“Hard”);
radioGroup.add(rb1);
radioGroup.add(rb2);
radioGroup.add(rb3);
O código acima cria um grupo de botões e três elementos de botão de opção. Todos os três elementos são adicionados ao grupo. Isso garante que apenas uma opção dentre as opções disponíveis no grupo possa ser selecionada por vez. A opção padrão selecionada está definida como Fácil.
9. JList
O componente JList renderiza uma lista rolável de elementos. Um usuário pode selecionar um valor ou vários valores da lista. Esse comportamento de seleção é definido no código pelo desenvolvedor.
Exemplo:
DefaultListItem cityList = new DefaultListItem();
cityList.addElement(“Mumbai”):
cityList.addElement(“London”):
cityList.addElement(“New York”):
cityList.addElement(“Sydney”):
cityList.addElement(“Tokyo”):
JList cities = new JList(cityList);
cities.setSelectionModel(ListSelectionModel.SINGLE_SELECTION);
O código acima renderiza uma lista de cidades com 5 itens na lista. A restrição de seleção está definida como SINGLE_SELECTION. Se várias seleções forem permitidas, defina o comportamento como MULTIPLE_INTERVAL_SELECTION.
10. JComboBox
A classe JComboBox é usada para renderizar uma lista suspensa da lista de opções.
Exemplo:
String() cityStrings = ( "Mumbai", "London", "New York", "Sydney", "Tokyo" );
JComboBox cities = new JComboBox(cityList);
cities.setSelectedIndex(3);
A opção selecionada padrão pode ser especificada através do método setSelectedIndex. O código acima define Sydney como a opção selecionada padrão.
11. JFileChooser
A classe JFileChooser renderiza um utilitário de seleção de arquivo. Este componente permite que um usuário selecione um arquivo no sistema local.
Exemplo:
JFileChooser fileChooser = new JFileChooser();
JButton fileDialogBtn = new JButton(“Select File”);
fileDialogBtn.AddEventListner(new ActionListner()(
fileChooser.showOpenDialog();
))
var selectedFile = fileChooser.getSelectedFile();
O código acima cria uma caixa de diálogo de seleção de arquivos e a anexa ao botão. O clique no botão abriria a caixa de diálogo do seletor de arquivos. O arquivo selecionado é retornado através do método getSelectedFile.
12. JTabbedPane
JTabbedPane é outro componente muito útil que permite ao usuário alternar entre guias em um aplicativo. Este é um utilitário altamente útil, pois permite que o usuário navegue em mais conteúdo sem navegar para páginas diferentes.
Exemplo:
JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.addTab(“Tab 1”, new JPanel());
tabbedPane.addTab(“Tab 2”, new JPanel());
O código acima cria um painel com duas guias com os títulos Guia 1 e Guia 2.
13. JSlider
O componente JSlider exibe um controle deslizante que o usuário pode arrastar para alterar seu valor. O construtor usa três argumentos - valor mínimo, valor máximo e valor inicial.
Exemplo:
JSlider volumeSlider = new JSlider(0, 100, 50);
var volumeLevel = volumeSlider.getValue();
O código acima cria um controle deslizante de 0 a 100 com um valor inicial definido como 50. O valor selecionado pelo usuário é retornado pelo método getValue.
Conclusão
Agora que você tem a essência dos componentes no Swing, é altamente recomendável aprofundar-se e explorar mais. Os componentes do Swing são divertidos e podem ajudar a criar alguns aplicativos interessantes. Portanto, preste atenção nesses componentes, incluindo-os no aplicativo Swing.
Artigos recomendados
Este é um guia para os componentes Swing em Java. Aqui discutimos componentes Swing Java, como ImageIcon, JButton, JLable, JTextFiels, etc., juntamente com um exemplo. Você também pode consultar os seguintes artigos para saber mais -
- JScrollPane em Java (métodos)
- Visão geral do JScrollPane em Java
- JDialog em Java (sintaxe, usos)
- Ferramentas de implantação Java
- CardLayout em Java (Construtor)