Linguagens de Programação Orientadas a Objetos

Slides:



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

Programação em Java Prof. Maurício Braga
Programação em Java Prof. Maurício Braga
1 Interface Gráfica em Java Profa. Dra. Angélica Félix de Castro.
Eventos Marco Antonio, Arquiteto de Software – TJDF Novembro/2005
Criação de telas com Swing Arquiteto de Software – TJDF
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE III Prof. Thiago Pereira Rique
Excel Profa. Cristina M. Nunes.
Capítulo 14 Componentes GUI: Parte 1
14.17 Tratamento de Eventos de Teclado
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.
Orientação a Objetos: Encapsulamento e Classificação
Java: Pacotes e Modificadores de Visibilidade
Java: Pacotes e Modificadores de Visibilidade
Linguagens de Programação Orientadas a Objetos
De 17 1 Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes Aula.
Análise de Requisitos Use Case Renata Araujo Ricardo Storino
Estatística Básica Utilizando o Excel
April 05 Prof. Ismael H. F. Santos - 1 Modulo II CheckStyle Professor Ismael H F Santos –
Arrays Profa. Isabel Harb Manssour (Material adaptado das aulas dos Profs.: Luciana Nedel, Júlio Machado e Bernardo Copstein) Arrays Exercícios.
Graphical User Interface (GUI) Prof(o): Alexandre Parra.
Linguagem de Programação II
Capítulo 15 Swing – Parte 1.
Capítulo 15 Swing – Parte 2.
Tutorial II: Tratando eventos em Java
Tutorial I: Criando a interface de uma aplicação em Java
Aula de reposição Prof. Grace e Ângela
Classes e objetos Arrays e Sobrecarga
Classes e objetos Modelagem
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação JAVA
Componentes GUI GUI – Grafical User Interface – São construídas a partir de componentes GUI chamados de controles ou widgets (windows gadgets – engenhocas.
MECÂNICA - ESTÁTICA Vetores Forças Cap. 2.
Liane Tarouco CINTED/UFRGS
Object Oriented Software Construction (MEYER, Bertrand)
Programação Visual em Java
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Java – Programação Gráfica
Linguagem de Programação III
Interface Grafica - Swing Professor Rafael Monteiro
Interface Gráfica (material da Profa. Luciana Nedel - www. inf. pucrs
É u m e l e m e n t o f u n d a m e n t a l
EXERCÍCIOS PARA GUARDA-REDES
José Pacheco A. Prado. Você pode definir diferentes cursores em seus projetos. Para isto basta utilizar a função setCursor.
Projeto de Banco de Dados
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Linguagem e Ambiente Scratch
POO.
Stream – Fluxo I/O Sistema de Arquivos
Jpanel e Diagramadores
ÁREA DE TRABALHO DO WINDOWS
FORMATANDO O TRABALHO NO WORD 2007
Aulas 2 e 3 – Java – Prof. Marcelo Heitor # O método main e argumentos na linha de comando; # Fluxo padrão de entrada e saída; # A classe JOptionPane;
POO - II Prof.: Jean Carlo Mendes
POO Interface Gráfica - Swing
Compras – Planejamento de Estoque
Contagem Sequencial do Estoque
Contagem Sequencial do Estoque
Introdução PLB-II (Java) – Prof. Alberto  Mais componentes da GUI.
GUI – Graphic User Interface Prof. M.Sc. Ronnison Reges Vidal.
Programação Prof.: Bruno Rafael de Oliveira Rodrigues.
Programação Gráfica em Java Introdução
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.
Java Módulo II Projeto Final.
Principais Classes Swing AWT  As classes e interfaces localizadas nos pacotes:  java.awt  javax.swing  são recursos para o desenvolvimento de GUIs.
JFC e Swing Thiago Medeiros Barros 18/08/2011. JFC Java Foundation Classes é um conjunto de componentes e serviços que simplificam o desenvolvimento e.
Programação Gráfica em Java Leiaute Aula Na aula passada vimos: Tratamento de eventos Fontes de eventos Ouvintes de eventos.
Elaborando Interfaces
Transcrição da apresentação:

Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes mafm@cin.ufpe.br Aula 04 e 5 - Construção de GUI http://www.ufpa.br/sampaio/bd2003/lpoo  Marco Fagundes

Roteiro Introdução GUI em Delphi GUI em Java

Introdução Interface Gráfica com o Usuário (Graphical User Interface - GUI) Dá ao programa a característica “look” and “feel” Fornece ao usuário um nível básico de familiaridade Construída a partir de componentes (e.g., controles) O usuário interage com componentes GUI via mouse, teclado, etc.

GUI em Delphi

GUI em Delphi Form Designer

GUI em Delphi Terminologia Design vs Run time; Formulários; Componentes; Propriedades; Métodos e Eventos Terminologia (Formulários) Propriedades: Name, Caption, Position, BorderStyle, BorderSingle Eventos: OnActivate, OnClose Métodos Show, ShowModal

GUI em Delphi Terminologia (Componentes) Alguns componentes básicos Descrição TLabel Uma área onde texto não editáveis são exibidos Uma área onde o usuário entra com informação. Esta área pode ser usada para exibir informações TButton Uma área que dispara um evento quando clicada TPanel Um container no qual componentes podem ser colocados TEdit

GUI em Delphi Terminologia (Componentes) Terminologia (Propriedades) Name, Caption, Enabled, Visible, Align Propriedades: Name, Text, PasswordChar, Enabled, Visible Eventos: OnChange, OnKeyPress Métodos: Clear Propriedades: Name, Caption Propriedades: Name, Caption, Enabled, Visible Eventos: OnClique Terminologia (Propriedades)

GUI em Delphi Terminologia(Eventos)

GUI em Delphi Exercício Construir uma GUI conforme mostrado na figura abaixo TLabels TEdits TButtons

GUI em Java

GUI em Java AWT AWT (Abstract Windowing ToolKit) pacote java.awt Associados com as capacidades de GUI da plataforma local Aparência e, às vezes, interações diferentes executando em plataformas distintas Swing GUI components Pacote javax.swing Componentes originados da AWT (pacote java.awt) Contém look and feel Aparência e como o usuário interage com o programa Componentes leves Escritos completamente em Java

GUI em Java Class Component Contém o método paint para desenhar componentes na tela Class Container Coleação de componentes relacionados Contém o método add para adicionar componentes Class JComponent Customização de look and feel Capacidade de manipulação de eventos

GUI em Java Superclasses de alguns componentes Swing

GUI em Java Alguns componentes básicos do Swing Componente Descrição JLabel Uma área onde texto não editáveis são exibidos Uma área onde o usuário entra com informação. Esta área pode ser usada para exibir informações JEdit JButton Uma área que dispara um evento quando clicada JPanel Um container no qual componentes podem ser colocados

GUI em Java Componentes Básicos Swing JLabel Mostra um texto somente de leitura JTextField Texto que o usuário digita em uma única linha JButton Dispara uma ação específica quando clicado JPasswordField Estende JTextField. Esconde os caracteres que o usuário digita

GUI em Java Layout Managers Permite organizar componente GUI Fornece capacidades básicas de layout Processa detalhes de layout Programador pode concentrar no básico “look and feel” Interface LayoutManager

GUI em Java Gerenciadores de Layout Gerenciador Descrição FlowLayout Default para java.awt.Applet , java.awt.Panel e javax.swing.Jpanel. Coloca componente sequencialmente (esquerda ou direita) no ordem em que eles são adicionados. Também é possível especificar a ordem dos componentes usando o método add que recebe como argumentos um Component e um inteiro que representa sua posição. BorderLayout Default para o painel de conteúdo JFrame e Japplet. Distribui os componentes em cinco posições: North, South, East, West and Center GridLayout Organiza os componentes em linhas e colunas

GUI em Java Gerenciadores de Layout O FlowLayout coloca os componentes conforme a ordem em que são adicionados ao cointainer O GridLayout exibe os componentes em linhas e colunas (como uma tabela) deixa-os do mesmo tamanho

GUI em Java O Gerenciador BorderLayout Ele é o gerenciador de layout padrão para todas as janelas (Frames e Dialogs) Distribui os componentes em cinco regiões NORTH (topo do container) SOUTH (base do container) EAST (esquerda do container) WEST (direita do container) CENTER (centro do container) A área que tem a maior quantidade de espaço disponível é o centro

GUI em Java As classes do Swing estão no pacote javax.swing Cria-se uma Sub-classe de JFrame Método setTitle() define o nome da janela Método setSize() define o tamanho da janela Método setLocation() define a posição da janela na tela

GUI em Java Exemplo: Construindo uma Janela import javax.swing.*; public class Janela extends Jframe { public Janela() { setTitle("Exemplo de Janela"); setSize(300, 200); } public static void main(String arguments[]) Janela j = new Janela(); j.show();

GUI em Java Para centralizarmos uma janela na tela, deve-se saber o tamanho da tela em pixels Através da Classe Toolkit é possível obter diversas informações do sistema O método getScreenSize() retorna um objeto Dimension contendo o tamanho da tela Através da Classe Toolkit também podemos carregar um ícone para ser usado na aplicação O método setResizable() pode ser desabilitar o redimensionamento da janela Toolkit tk = Toolkit.getDefaultToolkit(); Dimension d = tk.getScreenSize(); int alturaTela = d.height; int larguraTela = d.width; setLocation(larguraTela / 4, alturaTela / 4); setResizable(false);

GUI em Java Adicionando componentes à Janela Deve-se criar uma instância das classes dos componentes selecionados no projeto da GUI. Por exemplo: JLabel e JTextField. JLabel lblValor1 = new JLabel("Valor 01:"); JTextField txtValor1 = new JTextField("0"); Em seguida defini-se um instância da classe Container que receberá os componentes a serem inseridos à Janela. Container c = getContentPane(); Após a definição do container prossegue-se com a definição do gerenciador de layout a ser utilizado. GridLayout gl = new GridLayout(3,2); c.setLayout(gl); Finalmente, os componentes podem ser adicionados ao container através do método add(). c.add(lblValor1); c.add(txtValor);

GUI em Java Adicionando componentes à Janela O método pack() pode ser utilizado para redimensionamento dos componentes conforme área disponível na janela Um exemplo de GUI é mostrado na figura abaixo

Manipulação de Eventos em Java

Manipulação de Eventos GUIs são direcionadas por eventos Eventos são gerados quando o usuário interage com a GUI e.g., movimento do mouse, pressionamento de botão, digitação em um textfield, etc. Class java.awt.AWTEvent

Manipulação de Eventos Algumas Classes do pacote java.awt.event

Manipulação de Eventos Modelo de Manipulação de Eventos Três partes Origem do Evento Componente GUI com o qual o usuário interage Objeto Evento Informação encapsulada sobre o evento ocorrido Listener do Evento Recebe o objeto evento quando notificado, respondendo-o O Programador deve executar duas tarefas Registrar o listener do evento para o fonte do evento Implementar um método que trate o evento (event handler)

Manipulação de Eventos Interfaces Event-listener do pacote java.awt.event

Manipulação de Eventos Duas questões em aberto: Como o manipulador de eventos é registrado? R: Através do método do componente addActionListener Como o componente sabe chamar actionPerformed? O evento é somente disparado para o listeners do tipo apropriado Cada tipo de evento tem uma interfaace event-listener correspondente Event ID especifica o tipo do evento que ocorreu

Manipulação de Eventos Registrando um manipulador de evento para um botão btnSomar.addActionListener (new ActionListener() { public void actionPerformed(ActionEvent e) {somar();} } ); Registrando um manipulador de evento para encerramento da aplicação addWindowListener (new WindowAdapter() { public void windowClosing(WindowEvent e) {System.exit(0);} } );

Manipulação de Eventos Exercício para entrega no dia 23/04/2003 Detalhamento no site - link “exercícios/Projetos”