HTMLpointHTMLpoint HTMLpoint.com


 Dibujo



Entendido el funcionamiento de la paint() podemos dibujar cualquier cosa en un aplique o en un componente en general.

La cosa más simple que se puede dibujar es la línea. Para hacerlo, utilizamos el método drawLine() de Graphics:

drawLine(Iniciox, Inicioy, Finx, Finy)

Éste dibuja una línea que parte de un punto (Iniciox, Inicioy) y llega a otro punto (Finx, Finy).
Antes de utilizar la drawLine() tenemos que comprender cómo se pueden cambiar los colores de las cosas que dibujamos.
Los colores se cambian utilizando el método setColor(Color c) de la clase Graphics.
Color es otra clase de awt que permite definir un color. Algunos de sus constructores son:

Color(float r, float g, float b), crea un color especificando los valores RGB (Red - Green - Blue, es decir, Rojo - Verde - Azul) con unos valores entre 0 y 1.

Color(float r, float g, float b, float a), como el anterior, sólo que permite definir incluso el valor alfa

Color(int r, int g, int b) , crea un color especificando los valores RGB (Red - Green - Blue, es decir, Rojo - Verde - Azul) con valores entre 0 y 255.

Color(int r, int g, int b, int a), como el anterior, sólo que permite definir incluso el valor alfa

Algunos colores simples se dan a través de unas constantes en la clase color:

Color.black
Color.blue
Color.cyan
Color.darkGray
Color.gray
Color.green
Color.lightGray
Color.magenta
Color.orange
Color.pink
Color.red
Color.white
Color.yellow


En el siguiente aplique se dibujan unas líneas de colores.

import java.awt.Graphics;

import java.awt.Color;

import java.awt.Button;

import java.awt.BorderLayout;

import java.awt.GridLayout;

import java.awt.Panel;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.applet.*;

public class líneas extends Applet
{

final ent SI=14;

final ent NO=0;

Button R=new Button("Rojo");

Button G=new Button("Verde");

Button B=new Button("Azul");

ent r_=0;

ent g_=0;

ent b_=0;

ent ir=0;

ent ig=0;

ent ib=0;

public void init()
{

setLayout(new BorderLayout());

Panel np=new Panel(new GridLayout(1,3));

np.add(R);

np.add(G);

np.add(B);

R.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{

ir=SÍ;
ig=NO;
ib=NO;
repaint();
}
}

);



G.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{

ir=NO;
ig=SÍ;
ib=NO;
repaint();
}
}

);


B.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{

ir=NO;
ig=NO;
ib=SÍ;
repaint();
}
}

);




add(np,BorderLayout.SOUTH);

}

public void paint(Graphics g)
{


for (ent e=0;e<200;e+=10)
{

g.setColor(new Color(r_,g_,b_));

r_=r_+ir;
g_=g_+ig;
b_=b_+ib;

g.drawLine(0,i,i,200);

}

g.setColor(Color.black);
g.drawLine(0,0,0,200);
g.drawLine(0,200,200,200);

r_=0;
g_=0;
b_=0;

}

}

El archivo lo llamamos líneas.java y lo cargamos con el archivo html siguiente (líneas.html):

<html>
<head>
<title>
Applet Líneas (líneas.class)
</title>
</head>
<body>
<APPLET code="lineas.class" width=200 height=300>
</APPLET>
</body>
</html>



  Volver al inicio de la página