OBJETIVOS DA AULA: Apresentar o processo de criação em uma interface gráfica para a Internet; Fornecer subsídios para que o aluno possa compreender onde aplicar Applets; Demonstrar a criação de uma Applet através de um exemplo. APLICAÇÕES PRÁTICAS: Onde usar Applets? Atualmente, uma das principais aplicações com o uso de Applets é o teclado Virtual utilizado por alguns bancos na Internet (netbanking), entretanto, as Applets podem ser usadas para outras finalidades. Observe as figuras seguintes: Jogo da velha através de uma Applet fonte: java.sun.com, veja endereço no browser. Relógio através de uma Applet fonte: java.sun.com, veja endereço no browser. Página 1
Teclado Virtual através de uma Applet fonte: caixa.com.br, veja endereço no browser. Para conhecer mais exemplos com Applets consulte http://java.sun.com/applets/jdk/1.4/index.html INICIANDO O PROJETO DA APPLET: Vamos começar a desenvolver uma Applet simples através do JBuilder. Inicie o JBuilder. Como você já sabe, será aberto o último projeto que você utilizou. Para criar um novo projeto, siga os procedimentos seguintes: 1. Menu File, item New. Será aberta a janela Object Gallery contendo várias guias. Selecione a guia Project e dê duplo clique sobre o ícone Project. 2. Clique sobre o primeiro ícone da Barra de Ferramentas, ou seja, o ícone New. Será aberta a janela Object Gallery. Selecione a guia Project e dê duplo clique sobre o ícone de mesmo nome. 3. Menu File, item New Project. Será aberta a janela Project Wizard Step 1 of 3 que corresponde a primeira de três partes para a criação de um novo projeto. A figura seguinte mostra este processo. Página 2
4. Nesse ponto você deverá definir as seguintes propriedades do projeto: Project name permite definir o nome que será dado ao Projeto. Coloque o nome do projeto como Projeto1. Type permite definir o tipo do Projeto, o tipo da sua extensão. No lista haverá as opções jpx (é um arquivo de projeto no formato XML, usado principalmente em equipes de desenvolvimento para o controle de versões do projeto), jpr (usada para aplicações em geral) e tpr (usado para aplicações compartilhadas - Borland Together ControlCenter projects). Escolha a extensão jpr. Root path permite definir o local e o caminho onde o projeto será gravado. Existe uma lista com as opções ou ainda um botão para a escolha do caminho. Obs: No momento que o usuário salva seu projeto no caminho escolhido o JBuilder cria uma pasta com o nome do projeto, por exemplo: se o usuário salvou seu projeto com o nome de Projeto1 em C:\Windows, na verdade o projeto ficará na pasta Projeto1 dentro da pasta Windows (C:\Windows\Projeto1). Outras propriedades aceite as outras propriedades com os valores sugeridos. 5. Clique no botão Finish para que o processo de criação de um novo projeto seja completado. Obs: Note que para a criação de um projeto existem três passos, porém é possível finalizar o processo já no primeiro passo como nós o fizemos. Isso porque as demais propriedades podem ser default. CRIAÇÃO DA APPLET: Página 3
Após ter sido criado o projeto, agora iremos criar uma applet que está contida na guia Web da janela Object Gallery. Para a criação de uma applet, siga os procedimentos seguintes: 1. Acesse o Menu File New. Será aberta a janela de diálogo Object Gallery. 2. Na janela Object Gallery, acesse a guia Web e dê duplo clique no ícone que corresponde a Applet. Será aberta a janela mostrada pela figura seguinte: 3. Semelhante à criação de projetos, nesta janela Applet Wizard - Step 1 of 4 iremos definir as seguintes propriedades: Package: define o pacote a ser utilizado no projeto. Mantenha o nome sugerido. Class Name: define o nome da classe que será criada. Digite Applet1. Base Class: define a classe base para a criação da Interface da Applet. Mantenha o sugerido. Generate header comments: possibilita a geração automática de comentários de cabeçalho. Deixe esta opção marcada. Can run standalone: permite executar a Applet como uma aplicação comum. Deixe esta opção desmarcada. Generate Standard methods: possibilita a geração automática de métodos padrões da Applet. Deixe esta opção desmarcada. 4. Clique no botão Next. Na seqüência surgirá a janela Applet Wizard - Step 2 of 4, onde são definidos parâmetros da Applet. Os parâmetros podem ser passados a Applet através de uma página HTML. Nesta Applet não usaremos nenhum parâmetro, por isso clique no botão Next para passar ao próximo passo. A figura seguinte mostra a janela que acabamos de comentar. Página 4
5. Será aberta a janela Applet Wizard - Step 3 of 4 onde configuraremos os detalhes referentes à página HTML. Existem as seguintes propriedades: Generate HTML Page: possibilita a geração automática da página HTML. Se esta opção estiver desmarcada, todas as demais configurações referentes à página serão descartadas. Title: define o título que estará contido na página HTML. Name: define o nome do documento. Codebase: define o caminho do class - o caminho da Applet, isto é, qual sua localização no HD local ou em um Web site. O. indica o diretório default. Width e Height: define respectivamente a largura e altura da área que a Applet será carregada na página HTML. HSpace e VSpace: define respectivamente o espaço horizontal e vertical entre a Applet e a borda da página HTML. Align: fixa o alinhamento da Applet na página, podendo ser: topo (top), no meio (middle), na parte inferior (bottom) e também à direita (right) e a esquerda (left). Página 5
6. O próximo passo ( Applet Wizard Step 4 of 4 ), última etapa para a criação da Applet se refere à definição de configurações de Runtime da Applet. Nós não faremos nenhuma configuração no momento, por isso clique no botão Finish para concluir a criação da nova Applet e encerrar o Assistente de Criação. 7. Selecione o formulário da Applet gerada (this no Structure Pane). 8. Defina a propriedade layout do this como BorderLayout. 9. Adicione ao formulário um componente JPanel da guia Swing Containers. 10. Defina a propriedade constraints do jpanel1 como Center. 11. Defina a propriedade layout do jpanel1 como FlowLayout. 12. Selecione flowlayout1 no Structure Pane e certifique-se que a propriedade alignment esteja fixada como Center e as propriedades hgap e vgap com o valor 5 cada uma. 13. Adicione ao jpanel1 os seguintes componentes: 1 Label, 1 TextField e 1 Button, respectivamente label1, textfield1 e button1 da guia AWT. 14. Mude a propriedade text do label1 para Senha:. 15. Deixe a propriedade text do textfield1 em branco. 16. Defina a propriedade columns do textfield1 com o valor 10. 17. Fixe a propriedade echochar com o caracter *. 18. Mude a propriedade text do button1 para OK. 19. Adicione a pasta UI no Structure Pane um componente joptionpane da guia Swing Containers. 20. Inclua a seguinte linha nas declarações de importação no início do código da Applet Java. Página 6
import java.net.*; 21. No evento actionperformed do button1 coloque o trecho de código seguinte. Esse trecho valida a senha digitada pelo usuário para permitir ou não o acesso a página do Google. Observe os comentários inseridos no código. try //tenta executar o trecho, se der erro pula para o catch { if (textfield1.gettext().equals("jbuilder")) { // direciona a página para o endereço especificado URL destino = new URL("http://www.google.com.br"); //endereço getappletcontext().showdocument(destino, "_BLANK"); } else { // se a senha estiver errada fornece uma mensagem joptionpane1.showmessagedialog(null,"a senha está incorreta. Tente novamente","erro", joptionpane1.error_message); textfield1.settext(""); textfield1.setfocusable(true); } } catch (Exception erro) {} //tratamento do erro Como você já deve ter notado, o único objetivo desta Applet é redirecionar o browser para o site do Google, caso o usuário digite a senha correta. 22. Para executar a Applet, você pode optar por uma das opções seguintes: Acesse o Menu Run Run Project ou clicando no botão Run Project na Barra de Ferramentas para surgir uma janela que executará o Applet. Clicando com o botão direito sobre o arquivo Applet1.html no Project Pane e escolhendo a opção Open, para executá-la em um browser no JBuilder. Clicando com o botão direito sobre o arquivo Applet1.html no Project Pane e escolhendo a opção Run using defaults para executá-la no AppletViewer como mostra a figura a seguir. RESUMO DA AULA: Nesta aula vimos mais uma das diversas funcionalidades contidas na ferramenta de desenvolvimento JBuilder: a criação de Applet. Aprendemos a criar uma Applet a partir do assistente de criação do JBuilder. Como exemplo prático, de Applet aprendemos a criar uma aplicação que simula uma tela de validação de senhas para acesso a um site. Você aprendeu também que uma Applet é uma aplicação para ser executada através do browser via Internet, ou até mesmo de forma local. Página 7
EXERCÍCIO: Com base no exemplo demonstrado nesta aula, utilize o assistente de criação para fazer uma Applet com dois objetos: um Choice e um Button (ambos do pacote AWT). Ao executar a Applet o usuário seleciona um estado e, ao clicar sobre o botão, aparece uma mensagem dizendo em qual região do Brasil o estado se localiza. PARA PENSAR E DISCUTIR: Qual o impacto para os desenvolvedores na criação de Applets através do assistente de criação? As Applets não são muito utilizadas na Web. Por quê você acha que isso ocorre? Quais as vantagens e desvantagens da utilização de um applet comparado a um formulário HTML? Você é capaz de propor um exemplo de aplicação prática para uma Applet? Página 8