interfaces gráficas - dei.isep.ipp.pt nfreire/java - gui.pdf · interface do utilizador noção...

Download Interfaces Gráficas - dei.isep.ipp.pt nfreire/JAVA - GUI.pdf · Interface do Utilizador Noção ...…

Post on 25-Nov-2018

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 1/383

    Interfaces GrficasComponentes Grficos

    Gestores de Posicionamento

    Manipuladores de Eventos

    (Livro Big Java, Late Objects Captulos 10 e 11)

    Paradigmas da ProgramaoPPROG

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 2/383

    Introduo

    Componentes Grficos

    Introduo

    Hierarquia de Classes

    Interfaces

    Categorias

    Contentores de Componentes Grficos

    Apresentao de Informao

    Controlos Bsicos

    Gestores de Posicionamento

    Manipuladores de Eventos

    Bibliografia Geral

    ndice Remissivo

    Sumrio GeralInterfaces Grficas

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 3/383

    Introduo

    Componentes Grficos

    Introduo

    Hierarquia de Classes

    Interfaces

    Categorias

    Contentores de Componentes Grficos

    Apresentao de Informao

    Controlos Bsicos

    Gestores de Posicionamento

    Manipuladores de Eventos

    Bibliografia Geral

    ndice Remissivo

    Sumrio GeralInterfaces Grficas

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 4/383

    SumrioIntroduo Interface do Utilizador

    Noo

    Tipos

    Consola

    Grfica (GUI Graphical User Interface)

    Interface do Utilizador Grfica

    Constituio

    Componentes Grficos

    Gestores de Posicionamento

    Manipuladores de Eventos

    Toolkits Java para GUIs

    AWT

    Swing

    Java 2D

    Histria AWT e Swing

    Construo

    Editor GUI

    Programao

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 5/383

    Noo

    Segmento de cdigo de uma aplicao que permite a sua interao com o utilizador

    Objetivo

    Permitir ao utilizador controlar o funcionamento do programa

    Meios Fornecidos

    Entrada // Para utilizador controlar execuo do programa

    Sada // Para programa indicar efeitos do controlo ao utilizador

    Interface do UtilizadorIntroduo

    Aplicao

    Utilizador

    Interface do Utilizador (UI)

    SadaEntrada

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 6/383

    Consola

    Interface Textual

    Entrada

    Suportada por comandos escritos no teclado

    Sada

    Suportada por texto impresso no monitor

    Grfica ( GUI - Graphical User Interface )

    Baseada

    Janelas do Sistema Operativo

    Constitudas por objetos

    Entrada

    Suportada por objetos de janelas

    Indicados atravs de rato e/ou teclado

    Sada

    Suportada por objetos de janelas

    Tipos de Interface do UtilizadorIntroduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 7/383

    GUI

    Constitudo por objetos

    Por exemplo

    Janela

    Botes de comando

    Tipos de Objetos

    Componentes Grficos

    Gestores de Posicionamento // Layout Managers

    Manipuladores de Eventos // Event Listeners

    Constituio de um GUI 1/2

    Boto de Comando

    Janela

    Introduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 8/383

    Componentes Grficos

    Objetos

    Com representao grfica

    Para mostrar num monitor

    Podem interagir com o utilizador

    Exemplo

    Botes de comando

    Gestores de Posicionamento

    Objetos

    Gerem a colocao dos componentes na GUI

    Automaticamente

    Exemplo

    Redimensionamento da Janela

    Manipuladores de Eventos

    Respondem s solicitaes do utilizador

    Exemplo

    Resposta a cliques nos botes de comando

    Constituio de um GUI 2/2

    Boto de Comando

    Introduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 9/383

    Toolkits Java para GUI Principais

    Swing // Componentes Grficos

    Java 2D // Componentes especiais, para grficos 2D de alta-qualidade

    AWT // Gestores de Posicionamento

    // Manipuladores de Eventos

    Diagrama de Tecnologias Java Standard Edition 8 (http://docs.oracle.com/javase/8/docs/index.html)

    Introduo

    http://docs.oracle.com/javase/7/docs/index.html

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 10/383

    Histria dos Toolkits AWT e Swing

    AWT (Abstract Window Toolkit)

    1 Toolkit Java para construir GUIs

    Introduzido pelo JDK 1.0

    Componentes apresentavam limitaes

    Qualidades Grfica e Funcional < Plataformas Nativas mais ricas (Windows e Macintosh)

    Swing

    2 Toolkit Java para construir GUIs

    Introduzido pelo JDK 1.1

    No substitui completamente o AWT

    Construdo por cima do AWT

    Manipuladores de Eventos e Gestores de Posicionamento so AWT

    Estilo dos componentes grficos

    Independente do Sistema Operativo

    Fornecidos vrios estilos

    Classes Swing

    package javax.swing

    Nome comeado por J Em geral

    Swing

    AWT

    Componentes Grficos

    Gestores de PosicionamentoManipuladores de Eventos

    Introduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 11/383

    Formas

    Visual

    Programada

    Construo de um GUI 1/3Introduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 12/383

    Visual

    Usando

    Editor GUI

    Exemplo

    Editor GUI do Netbeans

    Classe JFrame Form

    Programador

    Desenha interface grfico

    Altera propriedades de objetos

    Editor GUI

    Cria cdigo

    Automaticamente

    Facilita criao de GUI

    Netbeans - Editor GUI

    Construo de um GUI 2/3Introduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 13/383

    Programada

    Escrita de cdigo GUI

    Programador

    Precisa de conhecer cdigo GUI

    Cdigo mais simples

    Do que forma visual

    Estudada

    Em PPROG

    Construo de um GUI 3/3Introduo

    Netbeans - Editor de Cdigo Fonte

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 14/383

    Introduo

    Componentes Grficos

    Introduo

    Hierarquia de Classes

    Interfaces

    Categorias

    Contentores de Componentes Grficos

    Apresentao de Informao

    Controlos Bsicos

    Gestores de Posicionamento

    Manipuladores de Eventos

    Bibliografia Geral

    ndice Remissivo

    Sumrio GeralInterfaces Grficas

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 15/383

    Introduo

    Categorias de Componentes Grficos

    Controlos Bsicos

    Apresentao de Informao

    Contentores de Componentes Grficos

    Estilos dos Componentes Swing

    Exemplos

    Java

    Windows

    Demos

    SumrioComponentesIntroduo

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 16/383

    Controlos Bsicos

    Usados principalmente na Entrada da Aplicao

    Para obter dados do utilizador

    Apresentao de Informao

    Usados na Sada da Aplicao

    Para mostrar informao ao utilizador

    Subcategorias

    Editvel

    No-Editvel

    Contentores de Componentes Grficos

    Usados na Estrutura da Interface Grfica

    Para suportar componentes grficos

    Subcategorias

    Nvel Superior

    Genricos

    Especiais

    Categorias de Componentes GrficosComponentesIntroduo

    Aplicao

    Utilizador

    Interface do Utilizador (UI)

    SadaEntrada

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 17/383

    ComponentesIntroduo Controlos Bsicos 1/3

    Componente Classe Interesse Representao Grfica

    Boto de Comando JButton Ordenar execuo de comando.

    Menu JMenu Escolher um comando entre

    mltiplos alternativos;

    Vantagem:

    Ocupa espao reduzido da

    GUI

    (rea da barra de menus).

    Caixa de Verificao JCheckBox Escolher mltiplas opes em

    simultneo.

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 18/383

    ComponentesIntroduo Controlos Bsicos 2/3

    Componente Classe Interesse Representao Grfica

    Boto de Opo JRadioButton Escolher uma opo entre mltiplas alternativas.

    Caixa de Combinao JComboBox Escolher um item de uma lista de objetos, sendo possvel editar o item escolhido;

    Cada item visualiza a stringretornada pelo mtodo toString() do respetivo objeto.

    Caixa de Listagem JList Apresentar uma lista de itens, numa ou mais colunas, para serem escolhidos (escolha simples ou mltipla);

    Os itens correspondem a objetos;

    Os componentes grficos podem ser visualizados. JList dentro de JScrollPane

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 19/383

    ComponentesIntroduo Controlos Bsicos 3/3

    Componente Classe Interesse Representao Grfica

    Campo de Texto

    JTextField Introduzir pequena quantidade

    de texto.

    Campo de

    Password

    JPasswordButton Introduzir pequena quantidade

    de texto, sem mostrar carateres

    digitados.

    Corredia JSlider Introduzir facilmente valor

    numrico a partir de uma gama

    de valores;

    Vantagem:

    Ocupa pouco espao.

    Spinner JSpinner Escolher item de uma gama de

    itens;

    Vantagens:

    Ocupa pouco espao;

    No mostra lista que pode

    cobrir outros componentes;

    Utilizador pode editar valor.

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 20/383

    Informao pode ser modificada por utilizador

    ComponentesIntroduo

    Componente Classe Interesse

    Escolha de Cor JColorChooser Escolher cor a partir de paleta de cores.

    Apresentao de Informao : Editvel 1/3

  • Nelson Freire (ISEPDEI-PPROG 2016/17) 21/383

    ComponentesIntroduo

    Componente Classe Interesse

    rea de Texto JTextArea Mostrar e editar texto sem estilo e em mltiplas linhas.

    Painel de Edio JEditorPane Mostrar e editar texto com estilo nativo ou definido pelo utilizador.

    Apresentao de Informao : Editvel 2/3

  • Nelson Freire (ISEPDEI-

Recommended

View more >