COPAS

LightBlog

Wednesday, July 6, 2011

Membuat jam analog menggunakan java

Aplet adalah suatu program Java yang disatukan dalam suatu file.HTML sehingga dapat dieksekusi dari suatu Browser. Aplet didefenisikan dengan cara mengextends class Apllet yang ada dalam package java.applet .
Cara mendefinidikan :
Class NamaApplet exteds Applet
[implements interface].
Kita lansung aja membuat contoh applet... nah sekarang kita kan membuat jam Analog pada applet..... source berwarna biruh...
import java.awt.*;
import java.applet.*;
import java.util.Date;

public class jamAnalog
extends Applet implements Runnable {
// Deklarasi
Thread runner;

public void paint(Graphics g) {
// Membuat latar belakang berwarna putih
g.setColor(Color.white);
g.fillRect(0, 0, size().width, size().height);
// membuat nilai titik tengah dari jendela
Point p = new Point(size().width / 2, size().height / 2);
// Menentukan Panjang Jarum
int jarum_detik = 85, jarum_menit = 69, jarum_jam = 50;
// Mengambil Waktu Sekarang
Date dt = new Date();
int detik = dt.getSeconds();
int menit = dt.getMinutes();
int jam = dt.getHours();

// Menghitung besarnya sudut
double sudut_det = detik * Math.PI * 2 / 60.0;
double sudut_men = menit * Math.PI * 2 / 60.0;
double sudut_jam = jam * Math.PI * 2 / 12.0 + sudut_men / 12.0;
// Menentukan nilai posisi Jarum pada sudut tertentu
int det_x = (int) (p.x + jarum_detik * Math.sin(sudut_det));
int det_y = (int) (p.y - jarum_detik * Math.cos(sudut_det));
int men_x = (int) (p.x + jarum_menit * Math.sin(sudut_men));
int men_y = (int) (p.y - jarum_menit * Math.cos(sudut_men));
int jam_x = (int) (p.x + jarum_jam * Math.sin(sudut_jam));
int jam_y = (int) (p.y - jarum_jam * Math.cos(sudut_jam));

// Membuat lingkaran berwarna hitam (bingkai Jam)
g.setColor(Color.black);
g.drawOval(p.x - 90, p.y - 90, 180, 180);
// Membuat Jarum detik berwarna merah
g.setColor(Color.red);
g.drawLine(p.x, p.y, det_x, det_y);
// Membuat Jarum menit berwarna hitam
g.setColor(Color.black);
g.drawLine(p.x, p.y, men_x, men_y);
// Membuat Jaum jam berwarna biru
g.setColor(Color.BLUE);
g.drawLine(p.x, p.y, jam_x, jam_y);
// Membuat lingkaran pusat
g.setColor(Color.DARK_GRAY);
g.fillOval(p.x - 6, p.y - 6, 12, 12);
// Membuat Tulisan Angka
g.setFont(new Font("Dialog", Font.BOLD, 16));
g.drawString("12", p.x - 4, p.y - 75);
g.drawString("3", p.x + 75, p.y + 2);
g.drawString("6", p.x - 2, p.y + 85);
g.drawString("9", p.x - 85, p.y + 2);
}

public void update(Graphics g) {
paint(g);
}

public void start() {
runner = new Thread(this);
runner.start();
}

public void run() {
while (true) {
try {
// Waktu delay
runner.sleep(1000);
}
catch (Exception e) {}
repaint();
}
}

}
semoga bermamfaat...........

1 comment:

  1. ini ada class gak?
    terus naruh nya dibawah public static void apa public class ?

    ReplyDelete