Programação em Java JButton e Tratamento de Eventos Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.

Slides:



Advertisements
Apresentações semelhantes
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE I Prof. Thiago Pereira Rique
Advertisements

Eventos Marco Antonio, Arquiteto de Software – TJDF Novembro/2005
Criação de telas com Swing Arquiteto de Software – TJDF
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE III Prof. Thiago Pereira Rique
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE II Prof. Thiago Pereira Rique
14.6  Campos de texto e uma introdução ao tratamento de eventos com classes aninhadas Um usuário interage com uma GUI para indicar as tarefas que o aplicativo.
Linguagens de Programação Orientadas a Objetos
Graphical User Interface (GUI) Prof(o): Alexandre Parra.
Linguagem de Programação II
Capítulo 15 Swing – Parte 2.
Tutorial II: Tratando eventos em Java
Componentes GUI GUI – Grafical User Interface – São construídas a partir de componentes GUI chamados de controles ou widgets (windows gadgets – engenhocas.
Programação Visual em Java
Linguagem de Programação III
Interface Grafica - Swing Professor Rafael Monteiro
Interface Gráfica (material da Profa. Luciana Nedel - www. inf. pucrs
POO.
Jpanel e Diagramadores
POO Interface Gráfica - Swing
Programação Prof.: Bruno Rafael de Oliveira Rodrigues.
POO - II PROF.: JEAN CARLO MENDES
UNIVERSIDADE FEDERAL DE SANTA CATARINA CTC - CENTRO TECNOLÓGICO INE - DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DISCIPLINA DE COMPUTAÇÃO COM OBJETOS DISTRIBUÍDOS.
Roberto C. S. Pacheco Professor
Principais Classes Swing AWT  As classes e interfaces localizadas nos pacotes:  java.awt  javax.swing  são recursos para o desenvolvimento de GUIs.
Prof.: Jean Carlo Mendes
Tratamento de exceções em Java Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de.
PROGRAMAÇÃO ORIENTADA A OBJETOS EM C++ Professor: Dilvan Moreira.
Programação em Java JPanel e Gerenciadores de Layout Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Interfaces Gráficas Jpanel e Diagramadores.
Programação em Java RMI - Remote Method Invocation Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Programação em Java Tratamento de Exceções Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel.
Programação em Java Threads Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Programação em Java JCheckBox, JradioButton, Jlist e Menus Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Disciplina: Estrutura de Dados Professor: Jeovane Reges Caxias – MA 2015 ACULDADE DE CIÊNCIAS E TECNOLOGIA DO MARANHÃO.
Algoritmos e Programação Prof. Marcos Saúde
Classes Objetos Atributos Métodos Coletor de Lixo (Garbage Collector ) Confraria do Java Nivelamento. Caroline, Marcelo e Luiz 12/05/2007.
GUI – GRAPHIC USER INTERFACE
Introdução OO.
Linguagens de Programação Conceitos e Técnicas
3.1 Classes e Objetos Em um programa orientado a objetos normalmente existem vários objetos de um mesmo tipo. Por exemplo, um programa de controle de.
Java: Interfaces Alcides Calsavara.
Criação e manipulação de objetos
CREATED BY RAFAEL S. T. VIEIRA
Edson Susumu Asaga JavaBeans Edson Susumu Asaga
Programação Orientada a Objetos
Interface gráficas em Java
Modelagem de Banco de Dados através do ERwin
Programação para Internet Rica– Aula 06 Prof. Me. Ronnison Reges Vidal
Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30.
Unidade VI – Exceções e Interfaces
Elaborando Interfaces
Unidade VII – Interfaces Gráficas
Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27.
Wrappers.
Elaborando as Interfaces Aulas 31, 32 e 33
Rosemary Silveira Filgueiras Melo
Elaborando as Interfaces Aulas 43, 44 e 45
Elaborando Interfaces
Rosemary Silveira Filgueiras Melo
Rosemary Silveira Filgueiras Melo
Programação Orientada a Objetos
Programação Orientada a Objetos
Rosemary Silveira Filgueiras Melo
Curso básico de PHP. 1 Vantagens: Gratuito Multiplataforma Estável Rapidez Comunicação.
Exercício sobre Interface Java
Leitura do teclado e Interface gráfica
Tipos Primitivos de Dados
EXERCÍCIOS DA AULA PASSADA
Aplicação com Várias Janelas
Interface Java: JFrame, JPanel, JButton, JLabel, JMenuBar, Jmenu, JMenuItem, addSeparator() e a biblioteca Java.Math Prof. Esp. André Aparecido da Silva.
Programação de Computadores II
Transcrição da apresentação:

Programação em Java JButton e Tratamento de Eventos Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores

javax.swing.JButton O botão é um componente em que o usuário clica para disparar uma ação específica. Um programa Java pode utilizar vários tipos de botões, incluindo botões de comando, caixas de marcação, botões de alternância e botões de opção.

Métodos de JButton Construtores JButton() JButton(Icon icone) JButton(String texto) JButton(String texto, Icon icone) Outros setText(String texto) setIcon(Icon icone) setMnemonic(char mnemonic) setEnable(boolean estado) setToolTipText(String tip) addActionListener(ActionListener l)...

Exemplo JButton public class ExemploBotao extends JFrame { private JButton botao1, botao2; private Icon cafe = new ImageIcon( "java.jpg"); public ExemploBotao() { super( "Testando Botões" ); // Cria o container e atribui o layout Container container = getContentPane(); container.setLayout( new FlowLayout() ); // Cria os botões botao1 = new JButton("Botão Java", cafe ); botao1.setToolTipText("Pressione o botão"); container.add(botao1); botao2 = new JButton("Sair"); botao2.setToolTipText("Finaliza o programa"); container.add( botao2 ); setSize( 360, 150 ); setVisible( true ); } public static void main(String args[]) { ExemploBotao application = new ExemploBotao(); application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }

Adicionando um Evento // Classe interna para tratamento de evento de botão private class ListenerbotaoImagem implements ActionListener { // Método de manipulação do evento public void actionPerformed( ActionEvent event ) { JOptionPane.showMessageDialog( null, "Você pressionou um botao com imagem"); } } // fim da classe interna //classe ExemploBotao.java... botao1.addActionListener(new ListenerBotaoImagem());...

Como funciona o Tratamento de eventos

Listeners e Tratamento de Eventos Como o tratador de eventos foi registrado? o registro se deu no comando: botao1.addActionListener( new ListenerBotaoImagem()); Eles adiciona o handler de Button (ListenerBotaoImagem) como sendo um listener para o objeto botao1. Como o componente GUI sabe que deve chamar actionPerformed() em vez de outro método de tratamento de eventos? Cada JComponent suporta vários tipos de eventos (de mouse, de teclas e outros). Quando ocorre um evento, ele é despachado para os ouvintes de eventos do tipo apropriado.

Tratamento de Eventos O mecanismo de tratamento de eventos possui três partes: A origem do evento. O objeto do evento. O “ouvinte” (listener) do evento.

Tratamento de Eventos A origem do evento é o componente GUI com o qual o usuário interage; O objeto evento encapsula as informações sobre o evento que ocorreu. As informações incluem uma referência para a origem do evento e quaisquer informações específicas que possam ser requeridas pelo listener; O listener recebe notificações de que um evento ocorreu permitindo que este realize determinada ação;

Tratamento de Eventos O programador precisa executar duas tarefas para processar um evento da GUI com o usuário em um programa: registrar um listener para determinado componente GUI; Implementar um método de tratamento de evento, também chamados de tratadores de eventos.

Listeners e Tratamento de Eventos Listeners são definidos por interfaces e podem estar aptos a tratar mais de um tipo de evento. Quando um listener tem um de seus métodos chamados, ele recebe um parâmetro (objeto) que descreve o evento ocorrido. Cada tipo de evento tem uma interface listener de eventos correspondente. Por exemplo, ActionEvents são tratados por ActionListeners, MouseEvents por MouseListeners (e MouseMotionListeners) e KeyEvents por KeyListeners.

Implementando um ActionListener Definindo a classe que implementa a interface do Listener Registrando o Listener: class MeuListener implements ActionListener { public void actionPerformed(ActionEvent e) { System.out.println("Botão pressionado"); }... JButton botao = new JButton("Ok"); botao.addActionListener(new MeuListener());...

Implementando um WindowListener import java.awt.event.WindowEvent; import java.awt.event.WindowListener; class MeuListener implements WindowListener { public void windowOpened(WindowEvent e) { } public void windowClosing(WindowEvent e) { System.out.println("Janela sendo fechada"); } public void windowClosed(WindowEvent e) { } public void windowIconified(WindowEvent e) { } public void windowDeiconified(WindowEvent e){ } public void windowActivated(WindowEvent e){ } public void windowDeactivated(WindowEvent e) { } }

Adaptadores No caso anterior, seis implementações seriam vazias pois só desejávamos responder a um único evento. Como essa é uma situação comum, o pacote event define adaptadores para todas as interfaces de listeners que têm mais de um método. Um adaptador é uma classe que implementa o listener e dá implementações vazias para todos os métodos.

Voltando ao Exemplo... class MeuListener extends WindowAdapter { public void windowClosing(WindowEvent e) { System.out.println("Janela sendo fechada"); }