Buscar

Aula 3 Desenvolvendo interfaces mais ricas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aula 3- Desenvolvendo interfaces mais ricas 
Objetivo desta Aula: 
Nesta aula, você irá: 
1 - Controlar aspectos visuais. 
2 - Construir Menus para usuários. 
3 - Manipular Caixas de informações e diálogos. 
4 - Apresentar componentes de trabalho, como campos e botões. 
5 - Apresentar campos de interfaces como listas e caixas de opção. 
Aspectos Visuais em Java 
Ao desenvolver uma Interface, é fundamental interferir em seus componentes visuais. 
Podemos gerenciar os seguintes componentes: 
 
 
 
 
 
 
 
 
Fontes 
A classe Font (java.awt.Font) representa as fontes que são utilizadas para apresentar os textos 
nas Interfaces gráficas. 
Em Java, as fontes precisam ser criadas para serem utilizadas. 
Resumo dos construtores: 
Font (String nome, int estilo, int tamanho); 
Cria uma fonte específica (nome), com o estilo e o tamanho em pontos. 
Cursores 
 
 
A classe Cursor (java.lang.Object) encapsula a representação do bitmap do cursor do 
mouse.Para alterar o comportamento dos cursores, basta definir o novo tipo de cursor com: 
this.setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR)); 
Neste caso, estamos definindo o cursor para cursor de movimento. 
Podemos definir os cursores com eventos como clique do botão, passar com o mouse por cima 
de algum componente, passar o mouse em uma área pré-definida ou outro evento que queira. 
Bordas 
Através do método setBorder de JComponent, o pacote Swing permite a criação de bordas 
envolvendo os componentes. 
 
 
Quando falamos em qualidade na Interface, não podemos deixar de pensar no cursor do mouse. 
Tipos de Bordas: 
Simple Define as bordas simples, que podem ser um relevo, apenas uma 
linha, encravada, sem borda. 
Matte Você define quantos pixels serão utilizados e qual figura será utiliza. 
Titled Coloca uma borda com um texto. 
Compound Podemos compor duas bordas com este estilo. 
 
 
 
Cores 
Podemos definir e manipular as cores em Java através da classe Color. Esta classe encapsula as 
cores do sistema RGB (Red, Green and Blue). 
O Sistema RGB pode ser entendido como objetos que emitem luz, como monitores, televisão 
ou o sol, sobrepondo ou somando os comprimentos de onda. 
 
R G B 
Simplificando, a composição dos três canhões de luz, um com vermelho, outro com verde e o 
último com azul produz todo o espetro de cor visível. 
É função do programador definir as intensidades de cada canhão, para determinar a cor 
desejada. 
A escala de cor varia de 0 até 255, sendo que 0 o canhão está desligado e com 255 ligado no 
máximo. Quando temos os três canhões desligados, teremos o preto, que indica ausência de 
luz, enquanto que quando ligamos todos os canhões no máximo, teremos o branco. 
Dica: Como curiosidade, sempre que ligarmos os três canhões com a mesma intensidade, 
teremos um tom de cinza. 
 
 
 
 
Cores pré-definidas: 
White Black 
Blue Cyan 
DarkGray Gray 
Green LightGray 
Magenta Orange 
Pink Red 
Yellow 
 
Cores de Fontes 
Para definirmos as cores das fontes dos componentes, basta definir a propriedade Foreground 
com a cor desejada. É possível utilizar cores pré definidas ou definir na hora. 
Ex.: 
 jLabel6.setForeground(Color.blue); 
 Color vermelhoEscuro = new Color(235,50,50); 
 jLabel5.setForeground(vermelhoEscuro); 
Cores de Fundo 
Para definirmos as cores de fundo, utilizamos a propriedade Background. O detalhe é que esta 
propriedade só funciona para componentes que sejam opacos. Então, é necessário definir a 
opacidade como verdadeiro. 
Ex.: 
 jLabel7.setOpaque(true); 
 jLabel7.setBackground(Color.green); 
 
Utilizamos o exemplo das bordas para mostrar as características das cores. 
 
.... 
 jLabel7.setForeground(Color.red); 
 jLabel6.setForeground(Color.blue); 
 jLabel7.setOpaque(true); 
 jLabel7.setBackground(Color.green); 
 Color vermelhoEscuro = new Color(235,50,50); 
 jLabel5.setForeground(vermelhoEscuro); 
.... 
 
 
Menus 
Os menus talvez sejam os componentes que mais aparecem nas ferramentas computacionais. 
Geralmente eles são encontrados no topo da janela da aplicação, de onde dão suporte à 
organização e agrupamento de funções afins em um mesmo contexto visual, o que facilita 
muito a localização e entendimento por parte do usuário, já que a estrutura de cada menu 
está delineada pelas características dos itens. 
Os menus, que são instanciados a partir da classe JMenu, são anexados a uma barra de menus 
com o método add(JMenu) de JMenuBar, sendo que instâncias dessa última classe 
comportam-se como containers para menus. A classe JMenuBar fornece os métodos 
necessários ao gerenciamento da barra onde os menus são anexados. 
A ordenação dos mesmos depende da ordem em que foram adicionados, sendo que são 
“empilhados” horizontalmente da esquerda para a direita. Evidentemente, só pode-se anexar 
menus a janelas da classe JApplet, JDialog, JFrame e JInternalFrame, e faze-se isso usando-se o 
método setJMenuBar(JMenuBar). A classe JMenuItem capacita a criação de itens de menu 
que, por sua vez, devem ser anexados a um menu. Pode-se usar um item de menu para 
executar alguma ação ou para gerir o acionamento de um submenu, o qual fornece mais itens 
que estão relacionados por alguma característica comum. 
Passo a passo para montagem de um menu em barras em Java: 
1. Instancie um JMenuBar. Ele é o responsável pela estrutura do menu. 
2. Adicione tantos JMenu’s quantos forem necessários para as opções. 
Dentro de cada JMenu, coloque o JMenuItem, que é o responsável pela opção a ser escolhida. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Código: 
 jMenuBar1.setName("jMenuBar1"); // NOI18N 
 jMenu1.setText("Arquivo")); // Aba Arquivo da barra de opções 
 jMenu1.setName("jMenu1"); // NOI18N 
 jMenuItem1.setText("Abrir")); // Opção Abrir do menu 
 jMenuItem1.setName("jMenuItem1"); // NOI18N 
 jMenu1.add(jMenuItem1); 
 jMenuItem2.setText("Editar")); // Opção Editar do menu 
 jMenuItem2.setName("jMenuItem2"); // NOI18N 
 jMenu1.add(jMenuItem2); 
 jMenuItem3.setText("Salvar")); // Opção Ajuda do menu 
 jMenuItem3.setName("jMenuItem3"); // NOI18N 
 jMenu1.add(jMenuItem3); 
 jMenuBar1.add(jMenu1); //Inclui o menu Arquivoo na barra de menus 
 jMenu2.setText("Ajuda")); // Aba Ajuda da barra de opções 
 jMenu2.setName("jMenu2"); // NOI18N 
 jMenuItem4.setText("Ajuda")); // Opção Ajuda do menu 
 jMenuItem4.setName("jMenuItem4"); // NOI18N 
 jMenu2.add(jMenuItem4); 
 jMenuItem6.setText("Pesquisa")); // Opção Pesquisa do menu 
 jMenuItem6.setName("jMenuItem6"); // NOI18N 
 jMenu2.add(jMenuItem6); 
 jMenuItem5.setText("Sobre")); // Opção Sobre do menu 
 jMenuItem5.setName("jMenuItem5"); // NOI18N 
 jMenu2.add(jMenuItem5); 
 jMenuBar1.add(jMenu2); //Inclui o menu Ajuda na barra de menus 
 jMenu3.setText("Sair")); // Aba Sair da barra de opções 
 jMenu3.setName("jMenu3"); // NOI18N 
 jMenu3.add(jMenuItem7); 
 jMenuBar1.add(jMenu3); //Inclui o menu Sair na barra de menus 
Listas e Caixas de opção 
As listas permitem apresentar um vetor de Strings na tela. Podemos usar dois objetos 
implementados, um na AWT – List e outro no Swing – Jlist. Ambos têm funcionalidades muito 
semelhantes. 
Na classe List da AWT, podemos inserir e retirar elementos diretamente, enquanto que na Jlist, 
teremos que fazer atravésde um modelo. Na próxima aula veremos detalhadamente este 
processo, quando analisaremos os eventos envolvidos. 
 
 Leitura do Capítulo 11 do livro Java como programar, 6ª Edição, de H. Deitel e P. Deitel, 
Editora Pearson Education, 2005. 
 Resolução dos exercícios de 11.04 até 11.10 do capítulo 11 do livro Java Como 
Programar.

Outros materiais