SlideShare uma empresa Scribd logo
1 de 48
Universidade Presbiteriana Mackenzie
Aula 2a: Java AWT
Prof. Ms. Daniel Arndt Alves
Faculdade de Computação e Informática
Linguagem de
Programação II
Daniel Arndt Alves Java AWT 1
Tópicos da Aula
• Pacotes gráficos de Java
– JFC
• AWT
• Swing
• API Java 2D
– API Java 3D
Daniel Arndt Alves Java AWT 2
Tópicos da Aula
• Componentes AWT
– Classe Button
– Classe Label
– Classe TextField
– Classe TextArea
– Classe Checkbox
– Classe Choice
– Classe List
– Classe Scrollbar
Daniel Arndt Alves Java AWT 3
Tópicos da Aula
• Containers AWT
– Panel
– Window
– Frame
– Dialog
Daniel Arndt Alves Java AWT 4
Pacotes gráficos de Java
A linguagem Java possui várias funcionalidades
gráficas, implementadas através de classes em
pacotes. Os pacotes principais são:
• JFC/AWT
• JFC/Swing
• JFC/Java2D
• Java3D
Daniel Arndt Alves Java AWT 5
JFC
JFC é uma abreviação de Java Foundation
Classes, que engloba um grupo de detalhes
para auxiliar no desenvolvimento de
interfaces gráficas.
JFC foi anunciado na JavaOne Developer
Conference (1997).
Daniel Arndt Alves Java AWT 6
Detalhes englobados pelo JFC
• AWT
• Componentes Swing
• Suporte Look-and-Feel (Java Look, CDE/Motif
Look, Windows Look)
• API para acessibilidade
• API Java 2D
• Suporte para operações Drag-and-Drop
Daniel Arndt Alves Java AWT 7
AWT (Abstract Window Toolkit)
Pacote mais básico para se trabalhar com
interfaces gráficas em Java. Este pacote possui
classes para os principais componentes e
containers de uma interface, tais como
botões, janelas, etc, além de permitir um
tratamento bem simplificado de eventos.
Daniel Arndt Alves Java AWT 8
Componentes Swing
Componentes mais especializados que os
componentes AWT.
Os componentes Swing são implementados sem
nenhum código nativo (ao contrário dos
componentes AWT que, na maioria dos casos,
implementam várias funcionalidades através
de métodos nativos).
Daniel Arndt Alves Java AWT 9
API Java 2D
Pacote que permite facilmente incorporar alta
qualidade gráfica em gráficos 2D, textos,
imagens em aplicações e em applets.
Por exemplo, existe um extenso suporte para
composição de imagens e tratamento de
imagens com canal alfa.
Daniel Arndt Alves Java AWT 10
API Java 3D
A API Java 3D é uma interface para escrever
programas para exibir e interagir com
elementos tridimensionais.
A API disponibiliza uma coleção de construções
de alto nível para criar e manipular geometria
3D e estruturas para “renderizar” a
geometria.
Pode ser integrada com VRML.
Daniel Arndt Alves Java AWT 11
COMPONENTES AWT
O pacote AWT disponibiliza oito componentes básicos de
interface:
• Button
• Label
• TextField
• TextArea
• Checkbox
• Choice
• List
• Scrollbar
Daniel Arndt Alves Java AWT 12
Funcionamento dos Componentes
Quando estes componentes são mostrados, eles são
desenhados segundo o suporte gráfico do usuário.
O AWT implementa isto armazenando, dentro do
componente, um segundo objeto chamado Peer.
Quando um componente recebe uma mensagem para
ser desenhado, ele passa esta mensagem para o
objeto Peer, que faz a interface com o sistema
operacional usando métodos nativos.
Daniel Arndt Alves Java AWT 13
Funcionamento dos Componentes
Os objetos peer transformam requisições AWT em
rotinas da interface nativa do usuário e envia o
feedback do sistema operacional para o AWT.
COMPONENTE PEER
SISTEMA
OPERACIONAL
Daniel Arndt Alves Java AWT 14
Classe Button
Daniel Arndt Alves Java AWT 15
Implementa o elemento de interface botão com
rótulo.
Construtores:
• public Button( ) Botão sem rótulo
• public Button(String rótulo) Botão com rótulo
Alguns métodos:
• public String getLabel() rótulo do botão
• public void setLabel(String r) altera rótulo do botão
Classe Button (Exemplo)
Button b1 = new Button( );
Button b2 = new Button("Aperte-me");
Daniel Arndt Alves Java AWT 16
Classe Label
Daniel Arndt Alves Java AWT 17
Implementa o elemento de interface rótulo.
Construtores:
• public Label( ) Rótulo vazio
• public Label (String rótulo) Rótulo não-vazio
Alguns métodos:
• public String getText() texto do rótulo
• public void setText(String r) altera texto do rótulo
Classe Label (Exemplo)
Label r1 = new Label( );
Label r2 = new Label("label2");
Daniel Arndt Alves Java AWT 18
Classe TextField
Implementa o elemento de interface caixa de texto.
Construtores:
• public TextField( ) Tamanho do container
• public TextField(int cols) Tamanho em cols
• public TextField(String texto) Tamanho do texto
Alguns métodos:
• public String getText() texto no componente
• public void setText(String r) altera texto no componente
Daniel Arndt Alves Java AWT 19
Classe TextField (Exemplo)
TextField t1 = new TextField(30);
TextField t2 = new TextField("inicial");
Daniel Arndt Alves Java AWT 20
Classe TextArea
Implementa o elemento de interface área de texto.
Construtores:
• public TextArea(int lin, int cols)
Tamanho lin x cols
• public TextArea(String txt, int lin, int cols)
Tamanho lin x cols com texto inicial txt
Alguns métodos:
• public String getText() texto no componente
• public void setText(String r) altera texto no componente
Daniel Arndt Alves Java AWT 21
Classe TextArea (Exemplo)
TextArea t1 = new TextArea(3,10);
TextArea t2 = new TextArea("texto...",3,30);
Daniel Arndt Alves Java AWT 22
Classe Checkbox
Implementa o elemento de interface botão liga/desliga.
Construtores:
• public Checkbox( ) Botão sem rótulo
• public Checkbox(String rótulo) Botão com rótulo
Alguns métodos:
• public String getLabel() rótulo do botão
• public void setLabel(String r) altera rótulo do botão
• public boolean getState() retorna o estado do botão
Daniel Arndt Alves Java AWT 23
Classe Checkbox (Exemplo)
Checkbox c1 = new Checkbox();
Checkbox c2 = new Checkbox("rotulo");
Daniel Arndt Alves Java AWT 24
Radio Buttons
Daniel Arndt Alves Java AWT 25
Componentes Checkbox podem ser agrupados através
de instância da classe CheckboxGroup.
Somente um dos componentes do CheckboxGroup
pode estar selecionado num determinado instante.
Botões com estas características são chamados de
“radio buttons”.
Construtor:
public Checkbox(String rotulo,
CheckboxGroup grupo, boolean estado_inicial)
Radio Buttons (Exemplo)
CheckboxGroup grupo = new CheckboxGroup( );
Checkbox op1 = new Checkbox("masculino",grupo,true);
Checkbox op2 = new Checkbox("feminino",grupo,false);
Daniel Arndt Alves Java AWT 26
Classe Choice
Implementa o elemento de interface lista pop-down.
Construtor:
public Choice( )
Alguns métodos:
• public synchronized void addItem(String item)
Adiciona um item à lista
• public String getSelectedItem( )
String da opção escolhida
Daniel Arndt Alves Java AWT 27
Classe Choice (Exemplo)
Choice c = new Choice();
c.addItem("Primeiro");
c.addItem("Segundo");
c.addItem("Terceiro");
c.addItem("Quarto");
Daniel Arndt Alves Java AWT 28
Classe List
Implementa o elemento de interface lista, com
possibilidade de múltiplas escolhas.
Construtor:
public List(int lin,boolean multiplo)
lin : número de opções visíveis
multiplo: true (seleção múltipla)
false (seleção simples)
Daniel Arndt Alves Java AWT 29
Classe List
Alguns métodos:
• public synchronized void addItem(String item)
Adiciona um item à lista
• public String[] getSelectedItems( )
Vetor de Strings com as opções escolhidas
Daniel Arndt Alves Java AWT 30
Classe List (Exemplo)
List c = new List(3,true);
c.addItem("Primeiro");
c.addItem("Segundo");
c.addItem("Terceiro");
c.addItem("Quarto");
Daniel Arndt Alves Java AWT 31
Classe Scrollbar
Implementa o elemento de interface barra de rolagem.
Construtores:
public Scrollbar( ) barra de rolagem vertical
public Scrollbar(int orientação,
int valor_inicial,
int incremento,
int mínimo,
int máximo)
Daniel Arndt Alves Java AWT 32
Classe Scrollbar
Alguns métodos:
• public int getValue()
Posicionamento da barra de rolagem
• public void setValue(int pos)
Muda posicionamento da barra de rolagem para pos
Daniel Arndt Alves Java AWT 33
Classe Scrollbar (Exemplo)
Scrollbar b1=new Scrollbar();
Scrollbar b2=new Scrollbar(Scrollbar.HORIZONTAL, 50, 10, 0, 100);
Daniel Arndt Alves Java AWT 34
Containers
Containers são elementos que armazenam
componentes gráficos. Não é possível usar um
componente sem que ele esteja dentro de um
container.
Containers podem, também, armazenar outros
containers.
Daniel Arndt Alves Java AWT 35
Containers do AWT
O AWT trabalha com quatro tipos de containers:
• Painel (Panel)
• Janela (Window)
• Frame
• Diálogo (Dialog)
Daniel Arndt Alves Java AWT 36
Painel
Painel é um container “puro”, isto, não é
propriamente uma janela e seu único propósito é
organizar os componentes numa janela, utilizando
gerenciadores de layout.
Um painel, como qualquer outro container, pode ser
colocado dentro de outro painel.
Uma classe muito útil, derivada da classe Panel, é a
classe Applet.
Daniel Arndt Alves Java AWT 37
Declaração e utilização de painéis
Button botaoAB=new Button("Abrir");
Button botaoFE=new Button("Fechar");
Panel painel=new Panel(); // Instancia Painel
painel.setLayout(new FlowLayout());
painel.add(botaoAB); // Coloca botão Abrir no painel
painel.add(botaoFE); // Coloca botão Fechar no painel
Daniel Arndt Alves Java AWT 38
Janelas
A classe Window, que implementa as funcionalidades de
janelas em Java, é muito parecida como Panel, exceto
que ela cria sua própria janela de primeiro nível, em
vez de estar contida dentro de um Panel. São muito
utilizadas para menus do tipo pop-up.
Geralmente, utiliza-se frames no lugar de janelas, uma
vez que são mais especializados.
Daniel Arndt Alves Java AWT 39
Frame
Frames são janelas especializadas que
conseguem interagir com o usuário
independente de outras janelas.
Com frames, um aplicativo pode criar várias
janelas independentes.
Daniel Arndt Alves Java AWT 40
Declaração e utilização de frames
Button botaoAB=new Button(“Abrir...”);
Button botaoFE=new Button(“Fechar...”);
Frame frame=new Frame(“Exemplo de Frame”);
setLayout(new FlowLayout());
frame.add(botaoAB); // Coloca botão Abrir no frame
frame.add(botaoFE); // Coloca botão Fechar no frame
frame.show(); // Exibe o frame
frame.hide(); // Oculta o frame
Daniel Arndt Alves Java AWT 41
Diálogos
Diálogos são janelas que são ativadas
momentaneamente para redirecionar um
processamento. Por exemplo, solicitar confirmação
de substituição de arquivo numa operação de cópia.
Daniel Arndt Alves Java AWT 42
Diálogos
Diálogos podem ser:
• modais: impedem a entrada para outras janelas
enquanto estão ativos.
• não-modais: não impedem a entrada para outras
janelas.
Os elementos de um diálogo são definidos por um
frame.
Daniel Arndt Alves Java AWT 43
Declaração e utilização de diálogos
Button botaoOK=new Button("OK");
Button botaoNO=new Button("NO");
Frame frame=new Frame("Exemplo de Frame");
Dialog dialogo; // Referência para diálogo
frame.setLayout(new FlowLayout());
frame.add(new Label("Deseja fechar o arquivo? ");
frame.add(botaoOK); // Coloca botão OK no frame
frame.add(botaoNO); // Coloca botão Cancel no frame
dialogo=new Dialog(frame,"Exemplo de Dialogo",true); // Cria diálogo
// | | |
// frame referência título do diálogo modal ( false=não modal)
dialogo.show(); // Mostra diálogo
Daniel Arndt Alves Java AWT 44
Daniel Arndt Alves Java AWT 45
Daniel Arndt Alves Java AWT 46
Imagens
• http://www.goldb.org/goldblog/cmg_images/
real_programmers_binary.jpg
• http://sandersconsulting.com/Portals/58319/i
mages/checklist.jpg
Daniel Arndt Alves Java AWT 47
Obrigado
Daniel Arndt Alves
http://www.progdan.pro.br/
daniel.alves@mackenzie.br
progdan@progdan.pro.br
Daniel Arndt Alves Java AWT 48

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Node js for beginners
Node js for beginnersNode js for beginners
Node js for beginners
 
jQuery from the very beginning
jQuery from the very beginningjQuery from the very beginning
jQuery from the very beginning
 
Html frames
Html framesHtml frames
Html frames
 
React - Introdução
React - IntroduçãoReact - Introdução
React - Introdução
 
HTML/CSS/java Script/Jquery
HTML/CSS/java Script/JqueryHTML/CSS/java Script/Jquery
HTML/CSS/java Script/Jquery
 
React js
React jsReact js
React js
 
Reactjs
ReactjsReactjs
Reactjs
 
Vue js for beginner
Vue js for beginner Vue js for beginner
Vue js for beginner
 
Junit
JunitJunit
Junit
 
Selenium IDE LOCATORS
Selenium IDE LOCATORSSelenium IDE LOCATORS
Selenium IDE LOCATORS
 
VueJS: The Simple Revolution
VueJS: The Simple RevolutionVueJS: The Simple Revolution
VueJS: The Simple Revolution
 
Web Worker, Service Worker and Worklets
Web Worker, Service Worker and WorkletsWeb Worker, Service Worker and Worklets
Web Worker, Service Worker and Worklets
 
introduction to Vue.js 3
introduction to Vue.js 3 introduction to Vue.js 3
introduction to Vue.js 3
 
jQuery
jQueryjQuery
jQuery
 
Automation Testing using Selenium Webdriver
Automation Testing using Selenium WebdriverAutomation Testing using Selenium Webdriver
Automation Testing using Selenium Webdriver
 
CSS Grid vs. Flexbox
CSS Grid vs. FlexboxCSS Grid vs. Flexbox
CSS Grid vs. Flexbox
 
Python RESTful webservices with Python: Flask and Django solutions
Python RESTful webservices with Python: Flask and Django solutionsPython RESTful webservices with Python: Flask and Django solutions
Python RESTful webservices with Python: Flask and Django solutions
 
Curso de css3 unidade 1 - introdução ao css
Curso de css3   unidade 1 - introdução ao cssCurso de css3   unidade 1 - introdução ao css
Curso de css3 unidade 1 - introdução ao css
 
Understanding flex box CSS Day 2016
Understanding flex box CSS Day 2016Understanding flex box CSS Day 2016
Understanding flex box CSS Day 2016
 
Dom
DomDom
Dom
 

Destaque (11)

Java RMI
Java RMIJava RMI
Java RMI
 
Java Platform, Enterprise Edition
Java Platform, Enterprise EditionJava Platform, Enterprise Edition
Java Platform, Enterprise Edition
 
Hiearquia Window
Hiearquia WindowHiearquia Window
Hiearquia Window
 
Sessao
SessaoSessao
Sessao
 
Histórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de ProgramaçãoHistórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de Programação
 
Bubble Sort
Bubble SortBubble Sort
Bubble Sort
 
Insertion Sort
Insertion SortInsertion Sort
Insertion Sort
 
Gerenciadores de Layout
Gerenciadores de LayoutGerenciadores de Layout
Gerenciadores de Layout
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Selection Sort
Selection SortSelection Sort
Selection Sort
 

Semelhante a Java AWT

Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeansThalles Anderson
 
lista de exercícios de estrutura de dados Básico primeira prova
lista de exercícios de estrutura de dados Básico primeira prova lista de exercícios de estrutura de dados Básico primeira prova
lista de exercícios de estrutura de dados Básico primeira prova Rogério Cardoso
 
Introdução à programação para Android
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para AndroidJorge Cardoso
 
Interface Gráfica.ppt
Interface Gráfica.pptInterface Gráfica.ppt
Interface Gráfica.pptJoberthSilva
 
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Adriano Teixeira de Souza
 
Java: Introducao ao Swing
Java: Introducao ao SwingJava: Introducao ao Swing
Java: Introducao ao SwingArthur Emanuel
 
Ds aula 01 - Introdução ao Visual Studio CSharp - Modo Visual
Ds aula 01 - Introdução ao Visual Studio CSharp - Modo VisualDs aula 01 - Introdução ao Visual Studio CSharp - Modo Visual
Ds aula 01 - Introdução ao Visual Studio CSharp - Modo VisualCentro Paula Souza
 
Arquitetura De Ap Is GráFicas Do Java Dtv Lwuit E Dtv Ui
Arquitetura De Ap Is GráFicas Do Java Dtv   Lwuit E Dtv UiArquitetura De Ap Is GráFicas Do Java Dtv   Lwuit E Dtv Ui
Arquitetura De Ap Is GráFicas Do Java Dtv Lwuit E Dtv UiErisvaldo Junior
 
Arquitetura de apis gráficas do java dtv - lwuit e dtv-ui
Arquitetura de apis gráficas do java dtv - lwuit e dtv-uiArquitetura de apis gráficas do java dtv - lwuit e dtv-ui
Arquitetura de apis gráficas do java dtv - lwuit e dtv-uiErisvaldo Junior
 
Aula 1 -_ambiente_visual_studio_2012
Aula 1 -_ambiente_visual_studio_2012Aula 1 -_ambiente_visual_studio_2012
Aula 1 -_ambiente_visual_studio_2012Laís Vidal
 
xDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdocletxDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdocletDenis L Presciliano
 

Semelhante a Java AWT (20)

Minicurso Java
Minicurso JavaMinicurso Java
Minicurso Java
 
Java swingcomponentes
Java swingcomponentesJava swingcomponentes
Java swingcomponentes
 
Aplicações java com netbeans
Aplicações  java com  netbeansAplicações  java com  netbeans
Aplicações java com netbeans
 
JavaFx - Introdução
JavaFx - IntroduçãoJavaFx - Introdução
JavaFx - Introdução
 
lista de exercícios de estrutura de dados Básico primeira prova
lista de exercícios de estrutura de dados Básico primeira prova lista de exercícios de estrutura de dados Básico primeira prova
lista de exercícios de estrutura de dados Básico primeira prova
 
Java
JavaJava
Java
 
Introdução à programação para Android
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para Android
 
Delphi 6 básico
Delphi 6 básicoDelphi 6 básico
Delphi 6 básico
 
Java 03
Java 03Java 03
Java 03
 
Interface Gráfica.ppt
Interface Gráfica.pptInterface Gráfica.ppt
Interface Gráfica.ppt
 
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
 
Java: Introducao ao Swing
Java: Introducao ao SwingJava: Introducao ao Swing
Java: Introducao ao Swing
 
Ds aula 01 - Introdução ao Visual Studio CSharp - Modo Visual
Ds aula 01 - Introdução ao Visual Studio CSharp - Modo VisualDs aula 01 - Introdução ao Visual Studio CSharp - Modo Visual
Ds aula 01 - Introdução ao Visual Studio CSharp - Modo Visual
 
Python Interface Gráfica Tkinter
Python Interface Gráfica TkinterPython Interface Gráfica Tkinter
Python Interface Gráfica Tkinter
 
Arquitetura De Ap Is GráFicas Do Java Dtv Lwuit E Dtv Ui
Arquitetura De Ap Is GráFicas Do Java Dtv   Lwuit E Dtv UiArquitetura De Ap Is GráFicas Do Java Dtv   Lwuit E Dtv Ui
Arquitetura De Ap Is GráFicas Do Java Dtv Lwuit E Dtv Ui
 
Arquitetura de apis gráficas do java dtv - lwuit e dtv-ui
Arquitetura de apis gráficas do java dtv - lwuit e dtv-uiArquitetura de apis gráficas do java dtv - lwuit e dtv-ui
Arquitetura de apis gráficas do java dtv - lwuit e dtv-ui
 
Aula 1 -_ambiente_visual_studio_2012
Aula 1 -_ambiente_visual_studio_2012Aula 1 -_ambiente_visual_studio_2012
Aula 1 -_ambiente_visual_studio_2012
 
Interface grafica
Interface graficaInterface grafica
Interface grafica
 
Plataforma .Net
Plataforma .NetPlataforma .Net
Plataforma .Net
 
xDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdocletxDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdoclet
 

Mais de Daniel Arndt Alves

Strings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPStrings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPDaniel Arndt Alves
 
Conceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos DistribuidosConceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos DistribuidosDaniel Arndt Alves
 
Exercicios - Java Swing Listeners
Exercicios - Java Swing ListenersExercicios - Java Swing Listeners
Exercicios - Java Swing ListenersDaniel Arndt Alves
 
Estrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de EnsinoEstrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de EnsinoDaniel Arndt Alves
 
Estrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da DisciplinaEstrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da DisciplinaDaniel Arndt Alves
 
Técnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da DisciplinaTécnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da DisciplinaDaniel Arndt Alves
 
Técnicas de Programação Aplicada III - Plano de Ensino
Técnicas de Programação Aplicada III - Plano de EnsinoTécnicas de Programação Aplicada III - Plano de Ensino
Técnicas de Programação Aplicada III - Plano de EnsinoDaniel Arndt Alves
 
Linguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoLinguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoDaniel Arndt Alves
 
Linguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da DisciplinaLinguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da DisciplinaDaniel Arndt Alves
 
Novos Recursos do Moodle 2.0 (Paper)
Novos Recursos do Moodle 2.0 (Paper)Novos Recursos do Moodle 2.0 (Paper)
Novos Recursos do Moodle 2.0 (Paper)Daniel Arndt Alves
 
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e AdministrativosModelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e AdministrativosDaniel Arndt Alves
 

Mais de Daniel Arndt Alves (18)

Variaveis Superglobais
Variaveis SuperglobaisVariaveis Superglobais
Variaveis Superglobais
 
Programacao Modular
Programacao ModularProgramacao Modular
Programacao Modular
 
Strings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPStrings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHP
 
Introducao ao PHP
Introducao ao PHPIntroducao ao PHP
Introducao ao PHP
 
Arquitetura web
Arquitetura webArquitetura web
Arquitetura web
 
HTML Básico
HTML BásicoHTML Básico
HTML Básico
 
Conceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos DistribuidosConceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos Distribuidos
 
Exercicios - Java Swing Listeners
Exercicios - Java Swing ListenersExercicios - Java Swing Listeners
Exercicios - Java Swing Listeners
 
Exercicios - Java Swing
Exercicios - Java SwingExercicios - Java Swing
Exercicios - Java Swing
 
Estrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de EnsinoEstrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de Ensino
 
Estrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da DisciplinaEstrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da Disciplina
 
Técnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da DisciplinaTécnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da Disciplina
 
Técnicas de Programação Aplicada III - Plano de Ensino
Técnicas de Programação Aplicada III - Plano de EnsinoTécnicas de Programação Aplicada III - Plano de Ensino
Técnicas de Programação Aplicada III - Plano de Ensino
 
Linguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoLinguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de Ensino
 
Linguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da DisciplinaLinguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da Disciplina
 
Novos Recursos do Moodle 2
Novos Recursos do Moodle 2Novos Recursos do Moodle 2
Novos Recursos do Moodle 2
 
Novos Recursos do Moodle 2.0 (Paper)
Novos Recursos do Moodle 2.0 (Paper)Novos Recursos do Moodle 2.0 (Paper)
Novos Recursos do Moodle 2.0 (Paper)
 
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e AdministrativosModelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
 

Último

QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASEdinardo Aguiar
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...Martin M Flynn
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxBiancaNogueira42
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfO Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfPastor Robson Colaço
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasCassio Meira Jr.
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaFernanda Ledesma
 
Mapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfMapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfangelicass1
 
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino FundamentalCartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamentalgeone480617
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasRicardo Diniz campos
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbyasminlarissa371
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESpatriciasofiacunha18
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxDeyvidBriel
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdfDemetrio Ccesa Rayme
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfEyshilaKelly1
 
HABILIDADES ESSENCIAIS - MATEMÁTICA 4º ANO.pdf
HABILIDADES ESSENCIAIS  - MATEMÁTICA 4º ANO.pdfHABILIDADES ESSENCIAIS  - MATEMÁTICA 4º ANO.pdf
HABILIDADES ESSENCIAIS - MATEMÁTICA 4º ANO.pdfdio7ff
 

Último (20)

QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
 
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfO Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e Específicas
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão Linguística
 
Mapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfMapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdf
 
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino FundamentalCartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecas
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdf
 
HABILIDADES ESSENCIAIS - MATEMÁTICA 4º ANO.pdf
HABILIDADES ESSENCIAIS  - MATEMÁTICA 4º ANO.pdfHABILIDADES ESSENCIAIS  - MATEMÁTICA 4º ANO.pdf
HABILIDADES ESSENCIAIS - MATEMÁTICA 4º ANO.pdf
 

Java AWT

  • 1. Universidade Presbiteriana Mackenzie Aula 2a: Java AWT Prof. Ms. Daniel Arndt Alves Faculdade de Computação e Informática Linguagem de Programação II Daniel Arndt Alves Java AWT 1
  • 2. Tópicos da Aula • Pacotes gráficos de Java – JFC • AWT • Swing • API Java 2D – API Java 3D Daniel Arndt Alves Java AWT 2
  • 3. Tópicos da Aula • Componentes AWT – Classe Button – Classe Label – Classe TextField – Classe TextArea – Classe Checkbox – Classe Choice – Classe List – Classe Scrollbar Daniel Arndt Alves Java AWT 3
  • 4. Tópicos da Aula • Containers AWT – Panel – Window – Frame – Dialog Daniel Arndt Alves Java AWT 4
  • 5. Pacotes gráficos de Java A linguagem Java possui várias funcionalidades gráficas, implementadas através de classes em pacotes. Os pacotes principais são: • JFC/AWT • JFC/Swing • JFC/Java2D • Java3D Daniel Arndt Alves Java AWT 5
  • 6. JFC JFC é uma abreviação de Java Foundation Classes, que engloba um grupo de detalhes para auxiliar no desenvolvimento de interfaces gráficas. JFC foi anunciado na JavaOne Developer Conference (1997). Daniel Arndt Alves Java AWT 6
  • 7. Detalhes englobados pelo JFC • AWT • Componentes Swing • Suporte Look-and-Feel (Java Look, CDE/Motif Look, Windows Look) • API para acessibilidade • API Java 2D • Suporte para operações Drag-and-Drop Daniel Arndt Alves Java AWT 7
  • 8. AWT (Abstract Window Toolkit) Pacote mais básico para se trabalhar com interfaces gráficas em Java. Este pacote possui classes para os principais componentes e containers de uma interface, tais como botões, janelas, etc, além de permitir um tratamento bem simplificado de eventos. Daniel Arndt Alves Java AWT 8
  • 9. Componentes Swing Componentes mais especializados que os componentes AWT. Os componentes Swing são implementados sem nenhum código nativo (ao contrário dos componentes AWT que, na maioria dos casos, implementam várias funcionalidades através de métodos nativos). Daniel Arndt Alves Java AWT 9
  • 10. API Java 2D Pacote que permite facilmente incorporar alta qualidade gráfica em gráficos 2D, textos, imagens em aplicações e em applets. Por exemplo, existe um extenso suporte para composição de imagens e tratamento de imagens com canal alfa. Daniel Arndt Alves Java AWT 10
  • 11. API Java 3D A API Java 3D é uma interface para escrever programas para exibir e interagir com elementos tridimensionais. A API disponibiliza uma coleção de construções de alto nível para criar e manipular geometria 3D e estruturas para “renderizar” a geometria. Pode ser integrada com VRML. Daniel Arndt Alves Java AWT 11
  • 12. COMPONENTES AWT O pacote AWT disponibiliza oito componentes básicos de interface: • Button • Label • TextField • TextArea • Checkbox • Choice • List • Scrollbar Daniel Arndt Alves Java AWT 12
  • 13. Funcionamento dos Componentes Quando estes componentes são mostrados, eles são desenhados segundo o suporte gráfico do usuário. O AWT implementa isto armazenando, dentro do componente, um segundo objeto chamado Peer. Quando um componente recebe uma mensagem para ser desenhado, ele passa esta mensagem para o objeto Peer, que faz a interface com o sistema operacional usando métodos nativos. Daniel Arndt Alves Java AWT 13
  • 14. Funcionamento dos Componentes Os objetos peer transformam requisições AWT em rotinas da interface nativa do usuário e envia o feedback do sistema operacional para o AWT. COMPONENTE PEER SISTEMA OPERACIONAL Daniel Arndt Alves Java AWT 14
  • 15. Classe Button Daniel Arndt Alves Java AWT 15 Implementa o elemento de interface botão com rótulo. Construtores: • public Button( ) Botão sem rótulo • public Button(String rótulo) Botão com rótulo Alguns métodos: • public String getLabel() rótulo do botão • public void setLabel(String r) altera rótulo do botão
  • 16. Classe Button (Exemplo) Button b1 = new Button( ); Button b2 = new Button("Aperte-me"); Daniel Arndt Alves Java AWT 16
  • 17. Classe Label Daniel Arndt Alves Java AWT 17 Implementa o elemento de interface rótulo. Construtores: • public Label( ) Rótulo vazio • public Label (String rótulo) Rótulo não-vazio Alguns métodos: • public String getText() texto do rótulo • public void setText(String r) altera texto do rótulo
  • 18. Classe Label (Exemplo) Label r1 = new Label( ); Label r2 = new Label("label2"); Daniel Arndt Alves Java AWT 18
  • 19. Classe TextField Implementa o elemento de interface caixa de texto. Construtores: • public TextField( ) Tamanho do container • public TextField(int cols) Tamanho em cols • public TextField(String texto) Tamanho do texto Alguns métodos: • public String getText() texto no componente • public void setText(String r) altera texto no componente Daniel Arndt Alves Java AWT 19
  • 20. Classe TextField (Exemplo) TextField t1 = new TextField(30); TextField t2 = new TextField("inicial"); Daniel Arndt Alves Java AWT 20
  • 21. Classe TextArea Implementa o elemento de interface área de texto. Construtores: • public TextArea(int lin, int cols) Tamanho lin x cols • public TextArea(String txt, int lin, int cols) Tamanho lin x cols com texto inicial txt Alguns métodos: • public String getText() texto no componente • public void setText(String r) altera texto no componente Daniel Arndt Alves Java AWT 21
  • 22. Classe TextArea (Exemplo) TextArea t1 = new TextArea(3,10); TextArea t2 = new TextArea("texto...",3,30); Daniel Arndt Alves Java AWT 22
  • 23. Classe Checkbox Implementa o elemento de interface botão liga/desliga. Construtores: • public Checkbox( ) Botão sem rótulo • public Checkbox(String rótulo) Botão com rótulo Alguns métodos: • public String getLabel() rótulo do botão • public void setLabel(String r) altera rótulo do botão • public boolean getState() retorna o estado do botão Daniel Arndt Alves Java AWT 23
  • 24. Classe Checkbox (Exemplo) Checkbox c1 = new Checkbox(); Checkbox c2 = new Checkbox("rotulo"); Daniel Arndt Alves Java AWT 24
  • 25. Radio Buttons Daniel Arndt Alves Java AWT 25 Componentes Checkbox podem ser agrupados através de instância da classe CheckboxGroup. Somente um dos componentes do CheckboxGroup pode estar selecionado num determinado instante. Botões com estas características são chamados de “radio buttons”. Construtor: public Checkbox(String rotulo, CheckboxGroup grupo, boolean estado_inicial)
  • 26. Radio Buttons (Exemplo) CheckboxGroup grupo = new CheckboxGroup( ); Checkbox op1 = new Checkbox("masculino",grupo,true); Checkbox op2 = new Checkbox("feminino",grupo,false); Daniel Arndt Alves Java AWT 26
  • 27. Classe Choice Implementa o elemento de interface lista pop-down. Construtor: public Choice( ) Alguns métodos: • public synchronized void addItem(String item) Adiciona um item à lista • public String getSelectedItem( ) String da opção escolhida Daniel Arndt Alves Java AWT 27
  • 28. Classe Choice (Exemplo) Choice c = new Choice(); c.addItem("Primeiro"); c.addItem("Segundo"); c.addItem("Terceiro"); c.addItem("Quarto"); Daniel Arndt Alves Java AWT 28
  • 29. Classe List Implementa o elemento de interface lista, com possibilidade de múltiplas escolhas. Construtor: public List(int lin,boolean multiplo) lin : número de opções visíveis multiplo: true (seleção múltipla) false (seleção simples) Daniel Arndt Alves Java AWT 29
  • 30. Classe List Alguns métodos: • public synchronized void addItem(String item) Adiciona um item à lista • public String[] getSelectedItems( ) Vetor de Strings com as opções escolhidas Daniel Arndt Alves Java AWT 30
  • 31. Classe List (Exemplo) List c = new List(3,true); c.addItem("Primeiro"); c.addItem("Segundo"); c.addItem("Terceiro"); c.addItem("Quarto"); Daniel Arndt Alves Java AWT 31
  • 32. Classe Scrollbar Implementa o elemento de interface barra de rolagem. Construtores: public Scrollbar( ) barra de rolagem vertical public Scrollbar(int orientação, int valor_inicial, int incremento, int mínimo, int máximo) Daniel Arndt Alves Java AWT 32
  • 33. Classe Scrollbar Alguns métodos: • public int getValue() Posicionamento da barra de rolagem • public void setValue(int pos) Muda posicionamento da barra de rolagem para pos Daniel Arndt Alves Java AWT 33
  • 34. Classe Scrollbar (Exemplo) Scrollbar b1=new Scrollbar(); Scrollbar b2=new Scrollbar(Scrollbar.HORIZONTAL, 50, 10, 0, 100); Daniel Arndt Alves Java AWT 34
  • 35. Containers Containers são elementos que armazenam componentes gráficos. Não é possível usar um componente sem que ele esteja dentro de um container. Containers podem, também, armazenar outros containers. Daniel Arndt Alves Java AWT 35
  • 36. Containers do AWT O AWT trabalha com quatro tipos de containers: • Painel (Panel) • Janela (Window) • Frame • Diálogo (Dialog) Daniel Arndt Alves Java AWT 36
  • 37. Painel Painel é um container “puro”, isto, não é propriamente uma janela e seu único propósito é organizar os componentes numa janela, utilizando gerenciadores de layout. Um painel, como qualquer outro container, pode ser colocado dentro de outro painel. Uma classe muito útil, derivada da classe Panel, é a classe Applet. Daniel Arndt Alves Java AWT 37
  • 38. Declaração e utilização de painéis Button botaoAB=new Button("Abrir"); Button botaoFE=new Button("Fechar"); Panel painel=new Panel(); // Instancia Painel painel.setLayout(new FlowLayout()); painel.add(botaoAB); // Coloca botão Abrir no painel painel.add(botaoFE); // Coloca botão Fechar no painel Daniel Arndt Alves Java AWT 38
  • 39. Janelas A classe Window, que implementa as funcionalidades de janelas em Java, é muito parecida como Panel, exceto que ela cria sua própria janela de primeiro nível, em vez de estar contida dentro de um Panel. São muito utilizadas para menus do tipo pop-up. Geralmente, utiliza-se frames no lugar de janelas, uma vez que são mais especializados. Daniel Arndt Alves Java AWT 39
  • 40. Frame Frames são janelas especializadas que conseguem interagir com o usuário independente de outras janelas. Com frames, um aplicativo pode criar várias janelas independentes. Daniel Arndt Alves Java AWT 40
  • 41. Declaração e utilização de frames Button botaoAB=new Button(“Abrir...”); Button botaoFE=new Button(“Fechar...”); Frame frame=new Frame(“Exemplo de Frame”); setLayout(new FlowLayout()); frame.add(botaoAB); // Coloca botão Abrir no frame frame.add(botaoFE); // Coloca botão Fechar no frame frame.show(); // Exibe o frame frame.hide(); // Oculta o frame Daniel Arndt Alves Java AWT 41
  • 42. Diálogos Diálogos são janelas que são ativadas momentaneamente para redirecionar um processamento. Por exemplo, solicitar confirmação de substituição de arquivo numa operação de cópia. Daniel Arndt Alves Java AWT 42
  • 43. Diálogos Diálogos podem ser: • modais: impedem a entrada para outras janelas enquanto estão ativos. • não-modais: não impedem a entrada para outras janelas. Os elementos de um diálogo são definidos por um frame. Daniel Arndt Alves Java AWT 43
  • 44. Declaração e utilização de diálogos Button botaoOK=new Button("OK"); Button botaoNO=new Button("NO"); Frame frame=new Frame("Exemplo de Frame"); Dialog dialogo; // Referência para diálogo frame.setLayout(new FlowLayout()); frame.add(new Label("Deseja fechar o arquivo? "); frame.add(botaoOK); // Coloca botão OK no frame frame.add(botaoNO); // Coloca botão Cancel no frame dialogo=new Dialog(frame,"Exemplo de Dialogo",true); // Cria diálogo // | | | // frame referência título do diálogo modal ( false=não modal) dialogo.show(); // Mostra diálogo Daniel Arndt Alves Java AWT 44
  • 45. Daniel Arndt Alves Java AWT 45
  • 46. Daniel Arndt Alves Java AWT 46