Capítulo 12 Eventos de interacção

Documentos relacionados
Interface com o Usuário (UI) UIs Desacopladas (2/3) BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

8. Interfaces Gráficas de Usuário

Programação Orientada a Objetos em Java. GUI Graphical User Interface

Programação Orientada a Objetos

MÓDULO 4 SWING Parte 3

JCheckbox JRadioButton JComboBox JList JMenu... Alguns componentes já vistos em aula JButton JLabel JTextField

Desenvolvimento de Aplicações Desktop

Aula 11: Interfaces gráficas (1/2): elementos de interface Swing

Caso não exista nenhum listener registado no objecto que gera o evento, este não terá qualquer efeito.

Interface Gráfica. Prof. Marcelo Cohen. (material da Profa. Luciana Nedel) Graphical User Interface (GUI)

Técnicas de Programação II

INTERFACE COM O USUÁRIO (em Java) Programação Orientada a Objetos

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing

Pacote Java Swing Parte 1

Construção de Interfaces Gráficas

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs

Java Foundation Classes Coleção de pacotes para criação de aplicações completas Desktop Interfaces gráficas (GUIs- Graphical User Interface)

Java - Swing. Raphaela Galhardo raphaela@j2eebrasil.com.br

Interface Gráfica com o Usuário (GUI) Profa. Isabel Harb Manssour (Material adaptado das aulas da Profa. Luciana Nedel e do Prof.

Programação Java. Construção de Interfaces com Swing (I)

Interface Gráficas Parte I. Bruno Crestani Calegaro

Especialização em Engenharia de Software - CEUT

API Swing Java. 1. Introdução. 2. Objetivos. 3. Surgimento do Swing. André Scarmagnani 1, Matheus Madalozzo 1, Miguel Diogenes Matrakas 1

JFrame. JLabel : Utilizado como rótulo para exibição de texto e ícones. Interface Gráfica de JAVA - Graphical User Interface (GUI)

Interface Gráfica. Prof. Marcelo Cohen

Programação Gráfica em Java.

Curso de Aprendizado Industrial Desenvolvedor WEB

JAVA. Marcio de Carvalho Victorino. Interface Gráfica em Java (GUI)

Tratamento de Eventos

Fundamentos de GUIs. João Carlos Pinheiro. Última Atualização Junho / 2004 Versão: 3.0

Introdução à Programação. Interfaces Gráficas

Programação de Interfaces Gráficas. Aula 1. Carlos Eduardo de Carvalho Dantas

Curso Java Starter. 1

JFC/Swing. Java Avançado Interface Gráfica JFC/Swing. Introdução JFC / Swing. Introdução JFC / Swing

Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface

package br.com.cadastro.visao;

Roteiro para criação de Applet

Criação de Applets Package: Class Name Base Class: Generate header comments: Can run standalone: Generate Standard methods:

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 1- Interfaces Gráficas com Swing

Construção de Interfaces Gráficas - Introdução

Programação Orientada a Objetos II

Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de

Swing. Page 1. Swing. Prof. Anderson Augustinho Uniandrade

AWT Versus Swing. Java Deployment Course: Aula 5. por Jorge H C Fernandes (jhcf@di.ufpe.br) CESAR-DI-UFPE Recife, 1999

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: imagecomposite FACULDADE DE TECNOLOGIA SENAC PELOTAS

Linguagem Java - Prof. Luciana Porcher Nedel 1. Um container genérico e visual. Ela trabalha em cooperação com o controle de layouts.

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico

Java Standard Edition (JSE)

UNIVERSIDADE FEDERAL DO PARANÁ. CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o.

JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation

Módulo 7. Interface Gráfica com o Usuário GUI - Introdução. Programação Orientada a Objetos I Java (Rone Ilídio)

Programação Visual em Java

Is Event Dispatcher Threade (Animation)

Curso de Java Módulo II Swing Fábio Mengue Centro de Computação - Unicamp

Capítulo 29. Menus. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Programação Orientada a Objetos II

Introdução à Programação Gráfica em Java

Componentes GUI A aparência e maneira como um usuário pode interagir com componentes AWT diferem de acordo com a plataforma. Componentes Swing permite

Prof. Fernando V. Paulovich 25 de julho de SCC Programação Orientada a Objetos

Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Programando GUIs

JTABLE STUDENT CONTROL JSC Gil Eduardo de Andrade / Emílio Rudolfo Fey Neto

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo

Interfaces Gráficas. Componentes Gráficos Gestores de Posicionamento Manipuladores de Eventos. (Livro Big Java, Late Objects Capítulos 10 e 11)

Java First-Tier: Aplicações. Abstract Window Toolkit (AWT) Construção de Interfaces com Swing (I) Swing: Características

Introdução à Tecnologia Java 02/2012. Java Aula 04 MDI. 05/09/2012 Celso Olivete Júnior.

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.

UNIPAC-TO POOII. Java NetBeans. Aplicações visuais e componentes. Giovanni Camargo Silva giovanni@unipato.com.br

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof.

1 Criando um aplicativo visual em Java

Eclipse IDE Dá-se importância aos antepassados quando já não temos nenhum. Francois Chateaubriand

Jogo Da Velha. - Parte 1 - Fazendo a parte gráfica do jogo da Velha

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo:

PERES JULIAO CORGOSINHO BRUNO BORGES LEMOS DE OLIVEIRA RAFAEL REIS GOMES

Aula 12 POO 1 Interface Gráfica no Java. Profa. Elaine Faria UFU

Criando interfaces com o usuário. Continuação

Interface Gráfica Swing. Leonardo Gresta Paulino Murta

Natureza do Software e dos Sistemas

Sumário Introdução à 3a. Edição Introdução Dia 1 - Conceitos Iniciais Dia 2 - Bem-vindo ao Mundo Real... 43

Interfaces Gracas em Java

Interface Gráfica. LPG II Java Interface Gráfica AWT. Introdução. AWT - Abstract Window Toolkit

Tutorial de Computação Introdução a Programação Gráfica em Java para MEC1100 v

CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I

COMPUTAÇÃO E PROGRAMAÇÃO

Programação Gráfica em Java Alguns Componentes javax.swing

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.

Aplicações Gráficas com AWT

Interface Gráfica. Disciplina: Desenvolvimento de Sistemas. Professor: Thiago Silva Prates

Exemplo com SWING 1: Fazer uma aplicação, em Java, que tenha, na tela, uma JProgressBar, um JLabel e um JButton.

Programação Orientada a Objetos

Swing Módulo II. Tiago Alves de Oliveira. Tiago Alves de Oliveira 1

Exercícios 07 Introdução à POO (Interface Gráfica)

Programação II. Cassio Diego

Programação por Objectos. Interfaces gráficas. Swing 1/52

Cronograma de Aulas 2º Módulo 11/07/2009 a 05/09/2009

CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I E J

Programação por Objectos. Java

Transcrição:

Capítulo 12 Eventos de interacção Eventos em Java Referência aos pacotes awt e swing Programação com botões e campos de texto Eventos, fontes de eventos e atendimento de eventos Qualquer programa deve reagir/processar eventos. Por exemplo, eventos de interacção com o utilizador: pressão em teclas, movimento do rato, clicks nos botões do rato, etc. Ao surgir um evento, desencadeia-se a notificação do atendedor de eventos. Este pertence a uma classe definida pelo programador da aplicação e os seus métodos descrevem as acções a realizar após o evento Um programa indica os eventos que pretende receber criando objectos de atendimento de eventos. Note-se que, em geral, um programa evita ser sistematicamente interrompido por eventos que não considera relevantes

Pacotes awt e swing O pacote java.awt (Abstract Windowing Toolkit) do Java é apropriado para a manipulação de janelas gráficas e eventos associados O pacote javax.swing incorpora uma melhoria do awt, sendo escrito no topo deste último. As componentes de ambos podem ser utilizadas indistintamente, aumentando assim a versatilidade dos programas com janelas gráficas Algumas classes do pacote awt Object AWT Component MenuComponent Container Button Menubar MenuItem Window Panel Label TextComponent Menu Frame TextArea TextField

Algumas classes do pacote swing Object Component Container JComponent Objectos visuais JLabel JMenuBar JButton JScrollBar JTextField... JPanel JCheckBox JToogleButton JRadioButton JFileChooser Exemplo: botão e respectivo atendedor de eventos Criação do botão com uma componente JButton, ao qual se associa um ActionListener. A interface de ActionListener é: public interface ActionListener { public void actionperformed(actionevent evento); Definição de uma classe com o método actionperformed, contendo as instruções a executar quando o botão é pressionado. O parâmetro evento contém os detalhes do evento, tais como o momento em que este ocorreu Criação de um objecto de atendedor de eventos e respectiva associação ao botão ActionListener listener = new ClickListener(); button.addactionlistener(listener);

Ficheiro ClickListener.java import java.awt.event.actionevent; import java.awt.event.actionlistener; /** Um atendedor de eventos que escreve uma mensagem no ecrã. */ public class ClickListener implements ActionListener { public void actionperformed(actionevent event) { System.out.println("I was clicked."); Ficheiro ButtonTester.java import java.awt.event.actionlistener; import javax.swing.jbutton; import javax.swing.jframe; /** Instalação de um atendedor de eventos (action listener). */ public class ButtonTester { private static final int FRAME_WIDTH = 100; private static final int FRAME_HEIGHT = 60;! public static void main(string[] args) { JFrame frame = new JFrame(); // a janela com barra de título JButton button = new JButton("Click me!!"); // cria e adiciona um botão frame.add(button); // define um atendedor de eventos e associa-o ao botão ActionListener listener = new ClickListener(); button.addactionlistener(listener); frame.setsize(frame_width, FRAME_HEIGHT); // define a dimensão da janela // quando a janela fechar, o programa deve terminar // (programa e janela gráfica são conceitos distintos) frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setvisible(true);

Aplicação com botões sempre que o botão é pressionado, acrescenta os respectivos juros ao saldo Modelo-Interacção-Controlo 1011 1100,0 Gestão de eventos/acções

Aplicação com botões Criação de um objecto da classe JButton JButton button = new JButton("Add Interest"); Utilização de um objecto da classe JLabel para mostrar a mensagem JLabel label = new JLabel("balance="+account.getBalance()); Utilização de um objecto da classe JPanel para conter/agrupar as várias componentes utilizadas na interface JPanel panel = new JPanel(); panel.add(button); panel.add(label); frame.add(panel); // adiciona o painel à janela Aplicação com botões A classe Listener calcula o juro e mostra o novo saldo Incluir a classe AddInterestListener como inner class - classe declarada dentro de outra classe - de modo a que possa aceder às variáveis próximas account (da conta bancária) e label class AddInterestListener implements ActionListener { public void actionperformed(actionevent event) { double interest = account.getbalance() * INTEREST_RATE / 100; account.deposit(interest); label.settext("balance=" + account.getbalance());

Ficheiro InvestmentViewer1.java Processamento de texto de entrada Para além de acrescentar os respectivos juros ao saldo sempre que o botão é pressionado, inclui um campo de texto para indicar a taxa de juro Utilização de componente JTextField para disponibilizar espaço para entrada de informação final int FIELD_WIDTH = 10; // em caracteres final JTextField ratefield = new JTextField(FIELD_WIDTH);

Processamento de texto de entrada Colocação de uma componente JLabel junto de cada campo de texto JLabel ratelabel = new JLabel("Interest Rate: "); Disponibilização de um botão para o utilizador sinalizar que a informação de texto fornecida deve ser processada O método actionperformed associado ao botão lê a informação escrita pelo utilizador nos campos de texto através do método gettext() class AddInterestListener implements ActionListener { public void actionperformed(actionevent event) { double rate = Double.parseDouble(rateField.getText());... Ficheiro InvestmentViewer2.java

Algumas componentes do pacote swing api/javax/swing JButton An implementation of a "push" button. JCheckBox An implementation of a check box - an item that can be selected or deselected, and which displays its state to the user. JCheckBoxMenuItem A menu item that can be selected or deselected. JComboBox A component that combines a button or editable field and a drop-down list. JComponent The base class for all Swing components except top-level containers. JFileChooser JFileChooser provides a simple mechanism for the user to choose a file. JFrame An extended version of java.awt.frame that adds support for the JFC/Swing component architecture. JLabel A display area for a short text string or an image, or both. JMenu An implementation of a menu - a popup window containing JMenuItems that is displayed when the user selects an item on the JMenuBar. JMenuBar An implementation of a menu bar. JMenuItem An implementation of an item in a menu. JOptionPane makes it easy to pop up a standard dialog box that prompts users for a value or informs them of something. JPanel is a generic lightweight container. JPopupMenu An implementation of a popup menu - a small window that pops up and displays a series of choices. Algumas componentes do pacote swing api/javax/swing JRadioButton An implementation of a radio button - an item that can be selected or deselected, and which displays its state to the user. JRadioButtonMenuItem An implementation of a radio button menu item. JScrollBar An implementation of a scrollbar. JScrollPane Provides a scrollable view of a lightweight component. JSeparator JSeparator provides a general purpose component for implementing divider lines - most commonly used as a divider between menu items that breaks them up into logical groupings. JSlider A component that lets the user graphically select a value by sliding a knob within a bounded interval. JSpinner A single line input field that lets the user select a number or an object value from an ordered sequence. JTextArea A JTextArea is a multi-line area that displays plain text. JTextField JTextField is a lightweight component that allows the editing of a single line of text. JTextPane A text component that can be marked up with attributes that are represented graphically. JToggleButton An implementation of a two-state button.