reloj componente, grafico, javabeans
Bueno amigos el caso es que me dejaro hacer un reloj, para ser honesto el codigo me lo pasaron, la cuestion es que tengo que hacer un componente con el, pasarlo a javabeans, ya trate de hacerlo por mi cuenta y no he avanzado mucho no se si me puedan ayudar ustedes Gracias
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Reloj1 extends JFrame{
private Point puntoCentro;
private JFrame ventana;
private JButton boton;
private Container contenido;
private Graphics objeto;
private boolean ban;
public Reloj1(int x,int y,int a,int b)
{
contenido=getContentPane();
contenido.setBackground(Color.white);
setSize(a-90,b-35);
setLocation(x,y);
setVisible(true);
PuntoCentro(new Point(x,y));
contenido.setLayout(null);
objeto=contenido.getGraphics();
ban=true;
setDefaultCloseOperation(EXIT_ON_CLOSE);
while(ban==true)
{
try{
Thread.sleep(1000);
traza();
manecillas();
}catch(Exception e){};
}
}
public void PuntoCentro(Point punto)
{
puntoCentro=punto;
}
public void traza()
{
objeto.setColor(Color.WHITE);
objeto.fillRect(puntoCentro.x-100,puntoCentro.y-100,200,200);
objeto.setColor(Color.RED);
objeto.fillOval(puntoCentro.x-2,puntoCentro.y-2,5,5);
objeto.setColor(Color.BLUE);
int hora;
Calendar calendario = new GregorianCalendar();
hora =calendario.get(Calendar.HOUR_OF_DAY);
for(int i=0;i<12;i++)
{
double ang=(AnguloHora(i,60));
int x2=(int)(90*(Math.cos(ang)));
int y2=(int)(90*(Math.sin(ang)));
objeto.drawString(""+(i+1),((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))+5);
}
}
public void manecillas()
{
int hora,minutos,segundos;
Calendar calendario = new GregorianCalendar();
hora =calendario.get(Calendar.HOUR_OF_DAY);
minutos=calendario.get(Calendar.MINUTE);
segundos=calendario.get(Calendar.SECOND);
double an=(AnguloMin(minutos));
double ang=(AnguloHora(hora,minutos));
int x2=(int)(90*(Math.cos(an)));
int y2=(int)(90*(Math.sin(an)));
objeto.setColor(Color.RED);
objeto.fillOval(((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))-2,5,5);
objeto.drawLine(puntoCentro.x,puntoCentro.y,(puntoCentro.x)+(x2),(puntoCentro.y)-(y2));
an=(AnguloMin(segundos));
x2=(int)(90*(Math.cos(an)));
y2=(int)(90*(Math.sin(an)));
objeto.fillOval(((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))-2,5,5);
objeto.drawLine(puntoCentro.x,puntoCentro.y,(puntoCentro.x)+(x2),(puntoCentro.y)-(y2));
x2=(int)(60*(Math.cos(ang)));
y2=(int)(60*(Math.sin(ang)));
objeto.fillOval(((puntoCentro.x)+(x2))-2,((puntoCentro.y)-(y2))-2,5,5);
objeto.drawLine(puntoCentro.x,puntoCentro.y,(puntoCentro.x)+(x2),(puntoCentro.y)-(y2));
String h="",m="",s="";
if(hora<10)
{
h="0";
}
if(minutos<10)
{
m="0";
}
if(segundos<10)
{
s="0";
}
objeto.setColor(Color.WHITE);
objeto.fillRect(puntoCentro.x-20,(puntoCentro.y)+(puntoCentro.y),80,30);
objeto.setColor(Color.BLUE);
objeto.drawString(h+hora+":"+m+minutos+":"+s+segundos,puntoCentro.x-20,(puntoCentro.y)+(puntoCentro.y)+20);
}
public double AnguloMin(int min)
{
double minuto;
minuto=((90-(min*6.0))*(Math.PI/180));
return minuto;
}
public double AnguloHora(int hor,int min)
{
double hora;
hora=(((90-(hor+(min/60.0))*30.0))*((Math.PI)/180));
return hora;
}
public static void main(String[] args)
{
Reloj1 reloj= new Reloj1(100,100,300,300);
reloj.setVisible(true);
}
}
>
- Inicie sesión o regístrese para enviar comentarios
Comentarios recientes
hace 8 semanas 3 días
hace 1 año 20 semanas
hace 1 año 24 semanas
hace 1 año 31 semanas
hace 1 año 39 semanas
hace 1 año 42 semanas
hace 1 año 44 semanas
hace 1 año 47 semanas
hace 1 año 47 semanas
hace 2 años 1 semana