[Tips Tkinter]: Membuat Jam Digital bersama Tkinter

Informasi tentang waktu sangatlah penting, terutama di bulan Ramadhan ini. Jika gak ada jam di rumah kita, tenang saja gak usah khawatir kita bisa buat sendiri dengan Python tentunya dengan GUI kesayangan Tkinter. So…No Clock! No Worry!

Spesifikasi Program:
* Komponen Tkinter: Frame, Label
* Modul tambahan: time
* Fungsi penting: strftime(), after()

Berikut Kode Program: JAM DIGITAL

# file: digital.py
# versi: python 2.7
# Program Jam Digital dengan Tkinter
# created by Klinik Python
# update: 02/08/2012 12.13 AM

# memanggil modul Tkinter
from Tkinter import *
# memanggil modul time (untuk mengakses waktu saat ini)
import time

class JamDigital:
	""" Kelas Jam Digital"""
	
	def __init__(self, parent, title):
		self.parent = parent
		
		self.parent.title(title)
		self.parent.protocol("WM_DELETE_WINDOW", self.onTutup)
		self.parent.resizable(False, False)
		
		# buat variabel String untuk teks jam
		self.teksJam = StringVar()
		
		self.aturKomponen()
		# melalukan looping untuk tampilan jam
		self.update()
		
	def aturKomponen(self):
		mainFrame = Frame(self.parent, bd=10)
		mainFrame.pack(fill=BOTH, expand=YES)
		
		# teks jam dibuat dengan komponen Label, yang bisa berubah 
		# setiap waktu.
		self.lblJam = Label(mainFrame, textvariable=self.teksJam,
			font=('Helvetica', 40))
		self.lblJam.pack(expand=YES)
		
		self.lblInfo = Label(mainFrame, text="www.KlinikPython.Wordpress.Com",
			fg='red')
		self.lblInfo.pack(side=TOP, pady=5)
		
	def update(self):
		# strftime() berfungsi untuk merubah data waktu secara lokal
		# menjadi bentuk string yang kita inginkan.
		datJam = time.strftime("%H:%M:%S", time.localtime())
		
		# mengubah teks jam sesuai dengan waktu saat ini
		self.teksJam.set(datJam)
		
		# perubahan teks jam dalam selang waktu 1 detik (1000 ms)
		self.timer = self.parent.after(1000, self.update)
		
	def onTutup(self, event=None):
		self.parent.destroy()
		
if __name__ == '__main__':
	root = Tk()
	
	app = JamDigital(root, "Jam Digital")
	
	root.mainloop()

Woke!…Semoga Bermanfaat
Salam PythonMania!

11 comments

  1. kagak gan, maksud saya program ujiannya untuk belajar gan
    hahah…, dulu saya pake java,
    jadi nanti kalo ada masalah kan ujung2nya nanya ke agan juga,
    hahaha

  2. mZ admin,,, web ini sangat membantu,,,,^_^

    slam kenal dari sy vivi,,,, (Kota Probolinggo)

    blehKah suatu saat sy bertanya,,,,,,???? ^_~

  3. bagaimana lising program untuk menghitung waktu (dari detik ke menit, dari menit ke jam) pada bahasa pemrograman python?

  4. master,terimakasih banyak untuk artikel phythonnya!
    mau tanya ni,cara membuat aplikasi untuk hp symbian s60v2 gimana ya!
    boleh dong di buatin tutorialnya sekalian contoh aplikasinya,kalo bisa yg bisa terkoneksi dengan jaringan(internet)
    #daka

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s