Você está na página 1de 30

Desenvolvimento de

Aplicações para Cliente


Servidor
Aula 01 – Java e Interface Gráfica

• Iniciando a interface Gráfica


• Trabalhando com Jframe e Swing

Prof. Fernando Gonçalves Abadia


Interface Gráfica

 Apresentação do desenvolvimento de interfaces


gráficas com o usuário na linguagem Java utilizando
um alguns componentes básicos da biblioteca Swing.
 A interface gráfica com o usuário (GUI - Graphical
User Interface) dão, de forma intuitiva, ao usuário um
nível básico de familiaridade, sem que jamais tenha
usado o programa. Dessa forma, é reduzido o tempo
de aprendizado do programa pelo usuário.
Interface Gráfica

 AsGUIs são construídas a partir de


componentes GUI. O componente GUI é um
objeto com o qual o usuário interage através
de, por exemplo:
• Mouse;
• Teclado;
• Alguma forma de entrada;
• Reconhecimento de voz.
Interface Gráfica

 Os componentes AWT (Abstract Windowing Toolkit) do pacote


java.awt estão diretamente associados com os recursos da
interface gráfica com o usuário da plataforma local. Assim, os
componentes são exibidos com uma aparência diferente em
cada plataforma. Por exemplo, de Windows, Apple Macintosh,
Linux, Solaris, etc.
 A versão 1.2 da linguagem Java (Java 2), trouxe os
componentes Swing do pacote javax.swing, desenvolvidos
totalmente em Java, e possibilitam a especificação de uma
aparência uniforme para todas as plataformas;
 Apesar de ser um novo pacote, alguns componentes Swing
utilizam o pacote AWT como superclasses de suas classes.
Interface Gráfica

java.lang.Object

java.awt.Component

java.awt.Container

javax.swing.JComponent
Interface Gráfica

 Exemplos de Componentes:
• JFrame = É um contêiner (formulário) para outros componentes GUI.
• JLabel = Área em que podem ser exibidos texto não-editável ou ícones.
• JTextField = Área em que o usuário insere dados pelo teclado.
• JButton = Área que aciona um evento quando o usuário clica.
• JCheckBox = Possui dois estados: selecionado ou não-selecionado.
• JComboBox = Lista de itens que o usuário pode fazer uma seleção clicando
em um item na lista ou digitando na caixa.
• JList = Área em que uma lista é exibida, possibilitando a seleção clicando
em qualquer item da lista.
• JPanel = Contêiner em que os componentes podem ser colocados.
Interface Gráfica

JLabel JTextField JButton JCheckBox

JComboBox

JList

JFrame
Iniciando a Interface Gráfica

 Desta forma, podemos agora iniciar um pequeno projeto JAVA


para demonstração de como utilizar o Jframe.
 Será preciso inicializar um novo projeto Java e criar um novo
pacote clicando com o direito na pasta “src”.
Iniciando a Interface Gráfica

 Para criar um formulário rapidamente, podemos ir em


File >> New >> Swing UI Designer >> GUI Form.
Iniciando a Interface Gráfica

 Após a criação do novo GUI Form, aparecerá dois arquivos:


um referente ao java e outro ao formulário da página (form).
Iniciando a Interface Gráfica

 No formulário, teremos nosso Jframe, delimitado pelo JPanel.

Verifique se o
Layout Manager
está como
GridLayout
Iniciando a Interface Gráfica

 Adicione um nome ao campo do JPanel.


Iniciando a Interface Gráfica

 Arraste um botão (JButton) para o final do nosso JPanel.


Iniciando a Interface Gráfica

 Renomeie o nome do campo do botão.


 Estas mudanças são refletidas no arquivo java
Iniciando a Interface Gráfica

 Clique com o direito no botão e vá em Create Listener, depois


em Action Listener e aperte ok na última tela.
Iniciando a Interface Gráfica

 Será criado um método Listener para o botão que executará


alguma ação ao ser pressionado e para teste, podemos criar
uma mensagem simples.
Iniciando a Interface Gráfica

 Será necessário criar o programa principal, inicializando o


JFrame, setando nosso form com o setContent Pane e
adicionando uma operação para finalizar.
 É importante deixar o JFrame visível.
Iniciando a Interface Gráfica

 Ao executar o teste, aparecerá uma pequena janela com um


botão e ao ser pressionado, uma mensagem aparecerá.
Iniciando a Interface Gráfica

 Podemos trocar a mensagem de teste para aparecer também


em um box.
Iniciando a Interface Gráfica
 Voltando ao formulário, trabalhando o projeto, vamos arrastar os
componentes de swing para a o painel (painelPrincipal).
 Acrescente 3 labels, 1 campo de texto, um comboBox, dois botões
radio, uma caixa de seleção e uma margem ao Jpanel.
Iniciando a Interface Gráfica
 Após arrastar os componentes, podemos agora renomear e ajustar cada
componente para que fique de forma conveniente a se trabalhar com uma
interface.
 Para isto, basta clicar com o direito no componente e colocar editar texto.
Iniciando a Interface Gráfica
 Para organizar o comboBox, precisaremos ir em suas propriedades e depois
em Model. Será necessário adicionar os itens desejados linha por linha.
Iniciando a Interface Gráfica
 Para ajustar o botão radio, precisaremos colocar o componente grupo de
botões, no navegador, nas propriedades do botão, vá em Button Group e
new e adicione um nome ao grupo, como btnConfig e, finalmente, nas
configurações dos botões radio, altere os dois botões para o btnConfig.
Iniciando a Interface Gráfica

 Com os componentes ajustados, precisaremos alterar o nome


de campo de cada componente, como por exemplo:
 O campo de nome para “nome”
 A caixa de seleção para “idade”
 O comboBox para “curso”
 Os botões radio para “sexo_m” e “sexo_f”
 E o botão para “btn_enviar”

 Desta forma, ao ir para o código fonte, o interpretador Java


irá compreender que estas palavras são de fato as variáveis
da interface gráfica.
Tratamento de Eventos

 As GUIs são baseados em eventos gerados pela interação do


usuário. Por exemplo, mover o mouse, clicar no mouse,
digitar um campo de texto, fechar uma janela, etc.
 Tanto os componentes AWT como Swing utilizam os tipos de
eventos do pacote java.awt.event. Mas o Swing também tem
seus próprios eventos no pacote javax.swing.event.
 Mecanismo de tratamento de eventos possui três partes: a
origem do evento, o objeto evento e o “ouvinte” (listener) do
ouvinte.
 O programador precisa: Registrar um ouvinte de evento no
componente e implementar um método de tratamento de
eventos.
Tratamento de Eventos

 Algumas interfaces mais utilizadas:


 ActionListener
 FocusListener
 KeyListener
 MouseListener
 WindowListener
 Cada interface listener de eventos especifica um ou mais
métodos de tratamento de evento que devem ser definidos na
classe que implementa a interface.
Tratamento de Eventos

 Podemos validar o clique do botão adicionando uma cláusula


if e uma outra else para que não aceite o campo de nome em
branco e a mesma coisa para que não aceite a opção de curso
em branco (o primeiro da lista).
 Para as mensagens de erro, podemos utilizar o JOptionPane
conforme mostrado anteriormente.
Tratamento de Eventos

 Com o nome e o curso validados, podemos agora, trabalhar os


dados para que sejam mostrados na tela conforme desejado:
Tratamento de Eventos

 Após a escrita do código, podemos visualizar as respostas


inseridas, executando o arquivo e preenchendo os campos:
Exercício

 Crie uma interface simples para cadastro de Pessoas.


 Precisaremos do campo nome, CPF, sexo, data de
nascimento, estado civil e profissão
 Ajuste os dados de forma a trabalhar com uma validação
de CPF, não aceitação de nome em branco, sexo como
botão radio, estado civil um comboBox e caso a profissão
esteja em branco, aparecer como desempregado.
 Mostre o nome, a idade da pessoa (em anos), assim como
seu sexo, estado civil e a profissão. Caso a profissão seja
engenheiro ou analista de sistema, mostre uma mensagem
de vagas disponíveis.

Você também pode gostar