SlideShare una empresa de 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

Más contenido relacionado

La actualidad más candente

HTML Semantic Elements
HTML Semantic ElementsHTML Semantic Elements
HTML Semantic ElementsReema
 
Kotlin Jetpack Tutorial
Kotlin Jetpack TutorialKotlin Jetpack Tutorial
Kotlin Jetpack TutorialSimplilearn
 
JavaScript Tutorial
JavaScript  TutorialJavaScript  Tutorial
JavaScript TutorialBui Kiet
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Bruno Grange
 
jpa-hibernate-presentation
jpa-hibernate-presentationjpa-hibernate-presentation
jpa-hibernate-presentationJohn Slick
 
ReactJS presentation
ReactJS presentationReactJS presentation
ReactJS presentationThanh Tuong
 
Introduction to HTML-CSS-Javascript.pdf
Introduction to HTML-CSS-Javascript.pdfIntroduction to HTML-CSS-Javascript.pdf
Introduction to HTML-CSS-Javascript.pdfDakshPratapSingh1
 
HTML Semantic Tags
HTML Semantic TagsHTML Semantic Tags
HTML Semantic TagsBruce Kyle
 
Div tag presentation
Div tag presentationDiv tag presentation
Div tag presentationalyssa_lum11
 
ADO Controls - Database Usage from Exploring MS Visual Basic 6.0 Book
ADO Controls - Database Usage from Exploring MS Visual Basic 6.0 BookADO Controls - Database Usage from Exploring MS Visual Basic 6.0 Book
ADO Controls - Database Usage from Exploring MS Visual Basic 6.0 BookMuralidharan Radhakrishnan
 
O que há de incrível sobre o Flutter
O que há de incrível sobre o FlutterO que há de incrível sobre o Flutter
O que há de incrível sobre o FlutterWiliam Buzatto
 
React Router: React Meetup XXL
React Router: React Meetup XXLReact Router: React Meetup XXL
React Router: React Meetup XXLRob Gietema
 
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJSKnoldus Inc.
 
The magic of flutter
The magic of flutterThe magic of flutter
The magic of flutterShady Selim
 

La actualidad más candente (20)

HTML Semantic Elements
HTML Semantic ElementsHTML Semantic Elements
HTML Semantic Elements
 
Flutter
FlutterFlutter
Flutter
 
Kotlin Jetpack Tutorial
Kotlin Jetpack TutorialKotlin Jetpack Tutorial
Kotlin Jetpack Tutorial
 
JavaScript Tutorial
JavaScript  TutorialJavaScript  Tutorial
JavaScript Tutorial
 
Span and Div tags in HTML
Span and Div tags in HTMLSpan and Div tags in HTML
Span and Div tags in HTML
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 
jpa-hibernate-presentation
jpa-hibernate-presentationjpa-hibernate-presentation
jpa-hibernate-presentation
 
react-slides.pptx
react-slides.pptxreact-slides.pptx
react-slides.pptx
 
JavaFX Presentation
JavaFX PresentationJavaFX Presentation
JavaFX Presentation
 
ReactJS presentation
ReactJS presentationReactJS presentation
ReactJS presentation
 
Introduction to HTML-CSS-Javascript.pdf
Introduction to HTML-CSS-Javascript.pdfIntroduction to HTML-CSS-Javascript.pdf
Introduction to HTML-CSS-Javascript.pdf
 
HTML Semantic Tags
HTML Semantic TagsHTML Semantic Tags
HTML Semantic Tags
 
Div tag presentation
Div tag presentationDiv tag presentation
Div tag presentation
 
Node.js e Express
Node.js e ExpressNode.js e Express
Node.js e Express
 
ADO Controls - Database Usage from Exploring MS Visual Basic 6.0 Book
ADO Controls - Database Usage from Exploring MS Visual Basic 6.0 BookADO Controls - Database Usage from Exploring MS Visual Basic 6.0 Book
ADO Controls - Database Usage from Exploring MS Visual Basic 6.0 Book
 
O que há de incrível sobre o Flutter
O que há de incrível sobre o FlutterO que há de incrível sobre o Flutter
O que há de incrível sobre o Flutter
 
React Router: React Meetup XXL
React Router: React Meetup XXLReact Router: React Meetup XXL
React Router: React Meetup XXL
 
Introduction to ReactJS
Introduction to ReactJSIntroduction to ReactJS
Introduction to ReactJS
 
The magic of flutter
The magic of flutterThe magic of flutter
The magic of flutter
 
Slides Css3
Slides Css3 Slides Css3
Slides Css3
 

Destacado (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
 

Similar 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 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
 
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
 
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
 

Similar 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 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
 
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
 
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
 

Más 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
 

Más 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

Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxFlviaGomes64
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptRogrioGonalves41
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...azulassessoria9
 
classe gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxclasse gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxLuciana Luciana
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...PatriciaCaetano18
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...DirceuNascimento5
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...marcelafinkler
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxMarcosLemes28
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptNathaliaFreitas32
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLidianePaulaValezi
 
3 2 - termos-integrantes-da-oracao-.pptx
3 2 - termos-integrantes-da-oracao-.pptx3 2 - termos-integrantes-da-oracao-.pptx
3 2 - termos-integrantes-da-oracao-.pptxMarlene Cunhada
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmicolourivalcaburite
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralAntonioVieira539017
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeitotatianehilda
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...AnaAugustaLagesZuqui
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...marcelafinkler
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Cabiamar
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdfmarlene54545
 

Último (20)

Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
classe gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxclasse gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptx
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .ppt
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretação
 
3 2 - termos-integrantes-da-oracao-.pptx
3 2 - termos-integrantes-da-oracao-.pptx3 2 - termos-integrantes-da-oracao-.pptx
3 2 - termos-integrantes-da-oracao-.pptx
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geral
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.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