Minggu, 11 Desember 2011

Stopwatch (Java)



Assalamualaikum..

Wasap semua?? Mudah-mudahan dalam keadaan sehat. Ok, karena sedang Ujian Akhir Semester, postingan saya kali ini berhubungan dengan perkuliahan. Khususnya perkuliahan di bidang komputer. Saya mau membagi program java yang saya buat sendiri. Program ini adalah Tugas Akhir saya untuk semester ini di Mata Kuliah Pemrograman Berorientasi Objek 1. Yaitu program Stopwatch yang dibuat dengan Java..

Langsung saja, ini dia script programnya..

Ini untuk class stopwatch.class

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class stopwatch
    extends JFrame implements ActionListener {
  Timer time;
  int milidetik, detik, menit, jam;
  String nol_jam = "";
  String nol_men = "";
  String nol_det = "";
  String nol_mili = "";
  int no = 0;
  JTextField tampilan = new JTextField("Tekan Mulai");
  JTextField tampilan2 = new JTextField("");
  JTextField tampilan3 = new JTextField("");
  JTextField tampilan4 = new JTextField("");
  JTextField tampilan5 = new JTextField("");
  List Split = new List();
  Button mulai = new Button("Start");
  Button reset = new Button("Reset");
  Button stop = new Button("Stop");
  Button split = new Button("Split");

  public stopwatch() {

    setResizable(false);
    getContentPane().setLayout(null);
   
    tampilan.setFont(new java.awt.Font("Times New Roman", Font.BOLD, 20));
    tampilan.setEditable(false);
    tampilan.setForeground(Color.black);
    tampilan.setBackground(Color.white);
    tampilan.setHorizontalAlignment(JTextField.CENTER);
    tampilan.setBounds(new Rectangle(75, 16, 146, 35));
    
    Split.setBounds(new Rectangle(11, 110, 271, 148));
    Split.setForeground(Color.black);

    mulai.setBounds(new Rectangle(12, 68, 40, 30));
    mulai.setSize(60, 30);
    mulai.setForeground(Color.black);
    mulai.setBackground(Color.green);

    split.setBounds(new Rectangle(82, 68, 40, 30));
    split.setSize(60, 30);
    split.setForeground(Color.black);
    split.setBackground(Color.green);
    split.setEnabled(false);

    reset.setEnabled(false);
    reset.setBounds(new Rectangle(152, 68, 40, 30));
    reset.setSize(60, 30);
    reset.setForeground(Color.black);
    reset.setBackground(Color.green);

    stop.setEnabled(false);
    stop.setBounds(new Rectangle(222, 68, 40, 30));
    stop.setSize(60, 30);
    stop.setForeground(Color.black);
    stop.setBackground(Color.green);

    tampilan2.setFont(new java.awt.Font("Times New Roman", Font.PLAIN, 12));
    tampilan2.setEditable(false);
    tampilan2.setForeground(Color.white);
    tampilan2.setBackground(Color.black);
    tampilan2.setHorizontalAlignment(JTextField.CENTER);
    tampilan2.setBounds(new Rectangle(21, 280, 146, 35));
    tampilan2.setSize(250, 20);
    tampilan2.setText("RRN Stopwatch. Created By Afrinaldi / 17700");

    tampilan3.setEditable(false);
    tampilan3.setBackground(Color.green);
    tampilan3.setHorizontalAlignment(JTextField.CENTER);
    tampilan3.setBounds(new Rectangle(16, 275, 146, 35));
    tampilan3.setSize(260, 30);

    tampilan4.setEditable(false);
    tampilan4.setBackground(Color.green);
    tampilan4.setHorizontalAlignment(JTextField.CENTER);
    tampilan4.setBounds(new Rectangle(70, 11, 146, 35));
    tampilan4.setSize(156, 45);

    tampilan5.setEditable(false);
    tampilan5.setBackground(new java.awt.Color(150,102,110));
    tampilan5.setHorizontalAlignment(JTextField.CENTER);
    tampilan5.setBounds(new Rectangle(1, 1));
    tampilan5.setSize(300, 340);
  
    mulai.addActionListener(this);
    stop.addActionListener(this);
    reset.addActionListener(this);
    split.addActionListener(this);

    this.getContentPane().add(tampilan);
    this.getContentPane().add(mulai);
    this.getContentPane().add(reset);
    this.getContentPane().add(stop);
    this.getContentPane().add(split);
    this.getContentPane().add(tampilan2);
    this.getContentPane().add(Split);
    this.getContentPane().add(tampilan3);
    this.getContentPane().add(tampilan4);
    this.getContentPane().add(tampilan5);
  }
  public void aktifkan() {
    ActionListener tr = new ActionListener() {
      public void actionPerformed(ActionEvent evt) {

milidetik++;
if(milidetik==100)
{
milidetik = 0;

detik++;
if(detik==60)
{
detik = 0;

menit++;
if(menit==60)
{
menit=0;

jam++;
if (jam==24);
{
jam=0;
}}}}

if (jam <= 9) {
nol_jam = "0";
}else nol_jam="";
if (menit <= 9) {
nol_men = "0";
}else nol_men="";
if (detik <= 9) {
nol_det = "0";
}else nol_det="";
if (milidetik <= 9) {
nol_mili = "0";
}else nol_mili="";

tampilan.setText(nol_jam + Integer.toString(jam)+ " : " + nol_men + Integer.toString(menit)+ " : " +
nol_det +Integer.toString(detik)+ " : " + nol_mili + Integer.toString(milidetik));
      }
    };
    time=new Timer(10,tr);
    time.start();
  }

  public void actionPerformed(ActionEvent e) {
   
    Object tombol = e.getSource();
    if (tombol== mulai) {
      mulai.setEnabled(false);
      reset.setEnabled(false);
      stop.setEnabled(true);
      split.setEnabled(true);
      aktifkan();
    }

if (tombol == split) {
      no += 1;
      Split.add(no + ".  " + tampilan.getText());
    }

    if (tombol == stop) {
      mulai.setEnabled(true);
      reset.setEnabled(true);
      stop.setEnabled(false);
      split.setEnabled(false);
      time.stop();
    }

    if (tombol == reset) {
     no=0;menit=0;detik=0;milidetik=0;jam=0;nol_mili="0";nol_men="0";nol_det="0";nol_jam="0";
      tampilan.setText(nol_jam + Integer.toString(jam)+ " : " + nol_men + Integer.toString(menit)+ " : " +
     nol_det +Integer.toString(detik)+ " : " + nol_mili + Integer.toString(milidetik));
      Split.clear();
    }
  }


Ini untuk class Main.class

import javax.swing.JFrame;

    public static void main(String[] args) {
        // TODO code application logic
           stopwatch sw = new stopwatch();
    sw.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    sw.setTitle("RRN Stopwatch");
    sw.setSize(300, 340);
    sw.show();
    }
}



Itu script 2 buah class yang dibutuhkan untuk membuat program stopwatch yang saya bikin..

Kira-kira skrinsyut dari program adalah seperti ini:






Untuk project lengkap dari program yang saya bikin, bisa di-download di sini..

Sekian. Assalamualaikum

Baca Selengkapnya

Kamis, 01 Desember 2011

Dosen Oh Dosen..

Lama tidak posting, karena sibuknya perkuliahan semester ini, sekaligus bertumpuknya  tugas Akhir Semester.

Postingan kali ini, mengenai Dosen.

Pasti teman-teman pernah merasa kesal atas kelakuan dosen yang seenaknya dan semaunya sendiri.

disini sebagai seorang calon guru, yang (InsyaAllah) akan jadi dosen juga (Amin), ingin mencoba merangkum beberapa sifat dosen atau tenaga pengajar lainnya yang seharusnya tidak dimiliki oleh mereka.


1. Merasa paling benar.

Ini pasti banyak dialami oleh teman2 mahasiswa. Si Dosen yang bersangkutan merasa hanya dia yang benar, dan  semua yang diucapkan mahasiswa yang tidak sesuai dengan perkataan sang dosen, pasti salah.  
Baru-baru ini saya juga mengalami hal yang demikian, yang lumayan membuat saya  sakit hati. 2 minggu lalu, di salah satu mata kuliah, sedikit terjadi ketegangan karena saya menyampaikan pendapat saya, yang sebenarnya itu adalah kebenarannya. Tapi, dosen ini masih kukuh terhadap pendapatnya yang sudah jelas dan pasti 'SALAH'. Coba deh, saya tanya dulu ke teman-teman, masalah yang menyebabkan keluarnya kata-kata "Anda Bodoh Sekali" dari mulut dosen saya itu. 1 KByte itu sama dengan 1024 Byte atau bit?? Pasti udah tau kan, mana yang benar??.


2. Ketepatan Waktu

Ini nih, yang menurut saya terjadi ketidakadilan, dimana apabila Mahasiswa terlambat 15 menit saja, tidak boleh masuk. Nah, dosen terlambat, bahkan sampai 15 menit menjelang jam kuliah berakhir.. Masih tetap boleh masuk (Lah, kalau dosen nggak boleh masuk, siapa yang ngajar?). Maksudnya gini, mahasiswa yang terlambat, bisa dapat sanksi, kalau dosen terlambat seperti itu, kok nggak dapat sanksi?? Sangat tidak adil..


3. Membeda-bedakan Mahasiswa

Disini maksudnya adalah, memberikan perlakuan berbeda kepada Mahasiswa yang lain yang dekat dengan dia, atau bahkan hanya karena dia adalah mahasiswi yang cantik.
Gini nih contohnya (dan memang benar terjadi). Sewaktu perkuliahan sedang berjalan, sekitar 40 menit telah berjalan, masuk mahasiswa yang biasa saja ke dalam kelas. Sang dosen memanggil dia, dan mulai bertanya-tanya kenapa terlambat dan memberi ceramah sebelum mempersilahkan duduk. Beberapa menit kemudian, masuk mahasiswi cantik yang pandai mengambil hati dosen, dan dekat  dengan dosen yang sedang mengajar waktu itu. Dibiarkan masuk tanpa ada reaksi apa-apa dari sang dosen.. WhatTheKawin??? 1 menit kemudian, masuk lagi mahasiswa biasa saja, lalu sang dosen kembali memanggil dia, dan menceramahi dia.. YA ALLAH. Ketidakadilan  seperti apa ini???


Sumber gambar: http://yeahmahasiswa.com


4. Memberi nilai sambil tutup mata

Ngerti kan maksudnya?? Memberi nilai kepada Mahasiswa hanya berdasarkan naluri. Hah?? Naluri?? iya, mungkin sang dosen memberi nilai, hanya karena namanya bagus ataupun alasan lainnya. Contohnya, si dosen melihat nama Afrinaldi, kemudian dia memberi nilai A+++++  karena nama itu keren. :O.. Kemudian, ada nama David Beckham, kemudian dia kasih nilai C, karena David Beckham udah tua.  (ini nyambungnya kemana sih??). 


5. Mengeluarkan Kata-Kata yang tidak sepantasnya

Sebagai pendidik, seharusnya pandai dalam memilih kata-kata yang pantas untuk disampaikan ke Mahasiswa mereka. Nah, banyak dosen yang tidak demikian, mengeluarkan kata-kata yang tidak pantas, seperti "Sarok" (dalam bahasa minang, artinya: sampah). Atau "Apak Ang" (artinya: Bapak kamu), atau banyak kata-kata lain yang merendahkan Mahasiswa atau bahkan menyinggung Mahasiswa. Sebagai pendidik, tentunya kita harus menggunakan kata-kata yang bisa memotivasi Mahasiswa, bukan kata-kata yang membuat mahasiswa merasa tidak berguna.


Sebenarnya masih banyak lagi, tapi itu yang paling banyak saya temui selama 3 semester saya duduk di bangku perkuliahan. Apabila teman-teman mau menambahkan, silakan tambahkan di kotak komentar. Bagi teman-teman calon pendidik, jadilah pendidik yang profesional, berwibawa, dan berkharisma yang bisa menjadi contoh anak didik kita. (Ngomong apa sih saya barusan?).
Baca Selengkapnya