Podemos utilizar os controles primitivos da lista apresentada na semana passada para criar um applet simples e funcional. Vejamos:
import java.awt.*;
import java.lang.*;
import java.io.*;
import java.applet.*;
// esse applet possui TextField, Panel, Button, menu Choice
e Canvas
public class exemplo_simples
extends Applet
{
TextField tf;
DrawCanvas c;
Button drawBtn;
Choice ch;
// acrescentando componentes na tela public
void init()
{
// área de exibição
resize(300,200);
setLayout(new BorderLayout());
// adicionando text
na parte superior
tf = new TextField();
add("North",tf);
// área de desenho
personalizada (Canvas) ao centro
c = new DrawCanvas(this);
add("Center",c);
// painel com botão e opções na parte inferior
Panel p = new Panel();
drawBtn = new Button("Desenho
de acordo com o selecionado ao lado");
p.add(drawBtn);
// criando uma ciaxa de opções e acrescentando opções
ch = new Choice();
ch.addItem("Retângulo");
ch.addItem("Vazio");
ch.addItem("Texto");
p.add(ch);
add("South",p);
}
// tratando
eventos
public boolean handleEvent(Event evt)
{
switch(evt.id)
{
case Event.ACTION_EVENT:
{
if(evt.target instanceof Button)
{
// redesenha área de trabalho para novas opções
c.repaint();
}
return false
}
default;
return false;
}
}
// retorna
a opção atual para exibição
public String getChoice()
{
return ch.getSelectedItem();
}
// retornando
texto na caixa de listagem
public String getTextString()
{
return tf.getText();
}
}
// área de trabalho
personalizada
class DrawCanvas extends Canvas
{
exemplo_simples elapp;
// armazena o applet para obter informações de desenho
public synchronized void
paint (Graphics g)
{
// obtém o tamanho atual da tela de exibição
Dimension dm = size();
// desenha com base na opção
String s = elapp.getChoice();
// calcula as coordenadas do centro
int x,y,width,height;
x = dm.width / 4;
y = dm.height / 4;
width = dm.width / 2;
height = dm.height / 2;
// desenha um retângulo no centro
if (s.compareTo("Retângulo")
== 0)
{
// desenha o retângulo no centro com cores
g.setColor(Color.blue;
g.drawRect(x,y,width,height);
g.setColor(Color.yellow);
g.fillRect(x + 1,y + 1,
width - 2, height - 2);
}
// obtém o texto no applet e o exibe no meio
if (s.compareTo("Texto")
==0)
{
String displayText = elapp.getTextString();
g.setColor(Color.red);
g.drawString(displayTExt,x,y
+ (height/2));
}
}
}
O applet acima possui quatro componentes, que permitem ao usuário escolher o que deve ser exibido e quando. É oferecida a possibilidade de desenhar um retângulo, não desenhar nada ou produzir um texto. Na parte inferior do applet temos um Panel (painel) com objetos Button (botão) e Choice (opção). Na parte superior temos um pbjeto TextField, que exibirá o texto produzido se esta for a opção escolhida.
Por hoje, ficamos por aqui. Um abraço e até a semana que vem.
Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.
Cristiano Trindade é desenvolvedor de sistemas e atualmente trabalha no mercado de aplicações para dispositivos móveis. Possui sólidos conhecimentos em Java, ASP, ASP.Net, ColdFusion e Javascript, C/C++, C# e Pascal.
2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.