Introducción A Los Applets en Java PDF
Introducción A Los Applets en Java PDF
Ventajas
Desventajas
Requiere el plugin de Java, que no est disponible por omisin en todos los
navegadores web.
No puede iniciar la ejecucin hasta que la JVM est en funcionamiento, y esto
puede tomar tiempo la primera vez que se ejecuta un applet.
Si no est firmado como confiable, tiene un acceso limitado al sistema del usuario -
en particular no tiene acceso directo al disco duro del cliente o al portapapeles.
Algunas organizaciones slo permiten la instalacin de software a los
administradores. Como resultado, muchos usuarios (sin privilegios para instalar el
plugin en su navegador) no pueden ver los applets.
Un applet podra exigir una versin especfica del JRE.
Puede tener vulnerabilidades que permitan ejecutar cdigo malicioso.
Estructura de un Applet
import java.awt.*;
import java.applet.*;
public class AppletUmg extends Applet
{
String mensaje;
public void init()
{
mensaje=" Universidad ";
}
public void start()
{
mensaje=mensaje+" Mariano Galvez de Guatemala ";
}
public void paint(Graphics g)
{
g.drawString(mensaje,80,10);
}
}
<html>
<head>
<title> Ejemplo de Applet </title>
</head>
<body>
<applet codebase="Directorio" code=" AppletUmg.class" width=300
height=200>
</applet>
</body>
</html>
Donde:
Eventos
Los eventos son sucesos que el Sistema Operativo detecta relacionados con el programa,
Ejemplo: la entrada/salida, y el sistema de ventanas:
- drawString(mensaje, c, f)
- drawLine(c,f,c,f)
- drawRect(c,f, ancho,alto)
- drawOval(c,f, ancho,alto)
- drawArc(c, f, ancho, alto, anguloInicial, anguloBarrido)
- drawPolygon (c[], f[], numPuntos)
Todas las coordenadas son en pixels, siendo (0,0) la esquina superior izquierda
ngulos en grados, 0=horizontal
Ejemplo:
import java.awt.*;
import java.applet.*;
public class Dibujo extends Applet
{
public void init()
{
}
public void start()
{
}
public void paint(Graphics g)
{
g.drawString("UNIVERSIDAD MARIANO GALVEZ DE GUATEMALA",50,10); //Texto
g.drawLine(50,15,325,15); //Dibujando Linea
g.drawOval(75,20,200,100); //Dibujando Ovalo Grande
g.drawOval(100,35,20,20); //Dibujando Ovalo Pequeo, ojo izquierdo
g.drawOval(140,35,20,20); //Dibujando Ovalo Pequeo, ojo derecho
g.drawArc(100,30,60,60,210,120); //Dibujando Archo, boca
g.drawRect(75,120,200,25); //Dibujando Rectangulo
int columna[] = {125, 225,125, 225}; //Estableciendo puntos en y, columnas
int fila[] = {145, 145,300, 300}; //Estableciendo puntos en x, filas
g.drawPolygon(columna,fila,4); //Dibujando el Poligono en base a los puntos y,x
}
}
Etiquetas y botones
Las etiquetas son ventanas de la clase Label con un texto, que se pueden aadir a un
applet (con add()).
Ejemplo:
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class Contador extends Applet implements ActionListener
{
Label mens;
Button incr,decr;
int cuenta=0;
public void init()
{
mens=new Label ("Contador: "+cuenta);
incr=new Button("Incrementar");
decr=new Button("Decrementar");
add(incr);
add(decr);
add(mens);
incr.addActionListener(this);
decr.addActionListener(this);
}
public void actionPerformed(ActionEvent ev)
{
String str = ev.getActionCommand();
if (str.equals("Incrementar"))
{
cuenta++;
}
else if(str.equals("Decrementar"))
{
cuenta--;
}
mens.setText("Contador: "+cuenta);
}
public void start()
{
}
public void paint(Graphics g)
{
}
}
Entradas de Texto
Son objetos de la clase TextField que presentan una ventana en pantalla en la que se
puede teclear un texto
Se pueden aadir a un applet
Se puede leer su valor con getText()
Generan eventos de tipo texto
Ejemplo:
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class Temperatura extends Applet implements ActionListener
{
Label mens;
Button af,ag;
TextField temp;
public void init()
{
mens=new Label (" ");
af=new Button("A Fahrenheit");
ag=new Button("A Grados");
temp= new TextField("0.0");
add(af);
add(ag);
add(temp);
add(mens);
af.addActionListener(this);
ag.addActionListener(this);
}
public void actionPerformed(ActionEvent ev)
{
try {
double tempActual=Double.parseDouble(temp.getText());
String str = ev.getActionCommand();
if (str.equals("A Fahrenheit"))
{
mens.setText("Temperatura "+tempActual+" C = "+(tempActual*1.80+32.0)+" F");
}
else if (str.equals("A Grados"))
{
mens.setText("Temperatura "+tempActual+" F = "+ ((tempActual-32.0)/1.80)+" C");
}
}
catch (NumberFormatException e)
{
mens.setText("Error");
}
}
public void start()
{
}
public void paint(Graphics g)
{
}
}//Fin de la clase Temperatura
Espero les pueda servir de mucho, este material preparado con bastante aprecio a los alumnos del
curso de Programacin Avanzada, secciones A y B
Atentamente: