cara membuat timer/stopwatch pada tkinter

BelajarPython - assalamualaikum wr. wb.

Jumpa lagi nih temen - temen.. Pada kesempatan kali ini, saya akan mencoba untuk mengajak kalian untuk belajar GUI atau tampilan dari python nih. Dan tentu saja dengan menggunakan modul tkinter ya.. Dan tentu saja karena menggunakan python, maka kita wajib untuk menginstall bahasa pemrograman python 3 nya ya.. Nah untuk mendownload file nya, kalian bisa pergi ke situs resmi dari bahasa pemrograman pytthon ini sendiri ya.. Yaitu https://python.org . Silahkan unduh python 3 nya dan install ya... Namun, jika kalian membutuhkan bimbingan untuk instalasinya, tenang saja.. Saya sudah membuatkan postingan untuk instalasi python 3 nya kok... SILAHKAN KLIK DISNI YA temen - temen jika kalian tertarik untuk membaca postingan yang saya maksud tadi.

Nah setelah kalian menginstall bahasa pythonnya, yuk sekarang kita lanjutkan postingan yang sudah tertunda tadi... Jadi, pada kesempatan kali ini, saya akan mencoba untuk membuat sebuah hitungan detik yang akan terus berjalan layaknya sebuah waktu ya... Nah penasaran kan bagaimana bentuk nya.. Makanya simak postingan saya yang satu ini ya... Let’s check it out temen - temen..

Cara membuat penghitung detik di window tkinter python 3.

Nah seperti yang sudah say janjikan tadi ya kali ini kita akan menampilkan sebuah penghitung detik. Dan perlu kalian ketahui, pada program yang akan saya bagikan ini terdapat penggabungan atau pemanfaatan dua widget ya. Yaitu teks/label dengan tombol. Nah seperti apa ya kira kira code program yang akan saya bagikan pada postingan kali ini ? Yuk langsung saja kita simak sama - sama code program nya di bawah ini.. Silahkan di cek ya...

import tkinter as tk

penghitung = 0


def hitung(teks):
    def count():
        global penghitung
        penghitung += 1
        teks.config(text=str(penghitung))
        teks.after(1000, count)
    count()


root = tk.Tk()
teks = tk.Label(root, font = "Verdana 16 bold")
teks.pack()

hitung(teks)

tombol = tk.Button(root, text='Stop', width=25, command=root.destroy)
tombol.pack()

root.mainloop()


Nah itu dia temen - temen code program nya.. Cukup panjang juga ya.. Ya wajar saja temen - temen.. Karena terdapat suatu proses untuk menghasilkan angka bergerak yang menghitung detik. Nah lalu seperti apa ya tempilan yang akan dihasilkan dari code program di atas ? Yuk silahkan cek hasil running nya pada code gambar yang ada di bawah ini ya.....



Nah itu dia temen - temen hasilnya.. Seperti yang sudah saya katakan tadi, angka 24 ini akan terus bergerak seiring berjalannya detik - demi detik. Dan tombol stop itu tentu saja digunakan untuk menghentikan serta close aplikasi atau window nya.

Cara mereset nilai ketika mencapai angka 60 pada penghitung detik di tkinter python 3.

Nah setelah kita membuat penghitung detik seperti di atas tersebut, maka sekarang saya akan mencoba untuk menggedit code programnyaagar saat sampai pada nilai 60, maka akan memulai lagi menghitung dari 0. Serta saya akan menambahkan nilai menit di window nya.. Jadi, jika detik nya mencapai nilai 60, maka menitnya akan bertambah sebanyak satu nilai.. Ya seperti jam pada umumnya ya...

Hal ini sangat berbeda degan program di atas ya.. Karena, jika kalian jalankan code program di atas, maka akan tetap berjalan dan bertambah sampai kalian menghhentikan aplikasi atau window nya...

Nah seperti apa ya kira - kira code programya ? Yuk langsung saja di simak pada code program di bawah ini..

import tkinter as tk

detik = 0
menit = 0


def hitung(teks1, teks2):
    def count():
        global detik
        global menit
        if detik >= 59 :
            detik = 0
            menit += 1
        detik += 1
        teks1.config(text="detik : "+str(detik))
        teks2.config(text="menit : "+str(menit))
        teks1.after(1000, count)
    count()


root = tk.Tk()
teksDetik = tk.Label(root, font = "Verdana 16 bold")
teksMenit = tk.Label(root, font = "Verdana 16 bold")
teksDetik.pack()
teksMenit.pack()

hitung(teksDetik, teksMenit)

tombol = tk.Button(root, text='Stop', width=25, command=root.destroy)
tombol.pack()

root.mainloop()



Nah itu dia temen - temen code program nya... Saya hanya menambahkan kondisi jika nilai nya sudah mencapai 60, maka saya ubah nilai nya menjadi 0 lagi dan juga menambah nilai menit nya seperti yang sudah saya katakan tadi... Jadi sekarang sudah menjadi layak nya sebuah detik an ya... Oya, untuk tambahannya, saya hanya menambahkan beberapa baris code progrm saja ya...

Untuk lebih jelasnya kalian bisa membandingkannya sendiri ya temen - temen dengan program yang sebelumnya..

Nah lalu seperti apa ya tampilan yang di hasilkan dari code program di atas ? Yuk silahkan di simak pada gambar di bawah ini..



Nah itu dia temen - temen tampilannyaa.. Gimana ? Cukup menarik dan lebih atraktif dari tampilan yag pertama ya.. Dan tentu saja dapat bermanfaat untuk memberikan waktu seperti layaknya sebuah stopwatch..

Penjelasan code program penghitung detik pada window tkinter python 3.

Nah setelah kita belajar untuk  membuat penghitung detiknya, sekarang saya akan mencoba untuk menjelaskan code program yang sudah saya bagikan tadi.. Agar kalian bisa mengerti dan paham akan code program yang sudah saya bagikan di atas ya... Dan tentu saja saya akan menjelaskan code porgramnya baris  demi baris.. Sehingga saya harap kalian dapat memahami dan memperaktekkannya sendir ya... Hehe

Nah langsung saja yuk kita simak sama - sama penjelasan saya mengenai code program di atas... Silahkan simak secara perlahan - lahan dan secara seksama ya.. Biar lekas paham.. Oke kita mulai sekarang ya...



import tkinter as tk  //code ini digunakan untuk mengmport tkinter.

detik = 0  //code ini digunakan untuk membuat variabel “detik” dengan isi angka 0.
menit = 0  //code ini digunakan untuk membuat variabel “menit” dengan isi angka 0.

def hitung(teks1, teks2): //code ini digunakan untuk membuat sebuah metode dengan nama “hitung”. Yang akan digunakan untuk membuat angka nya terus bertambah. Dengan memerlukan 2 buah parameter.
    def count():  //code ini digunakan untuk membuat metode lagi dengan nama “count” yang digunakan untuk menampung code program proses perhitungan.
        global detik  //code ini digunakan untuk meng global kan variabel “detik.
        global menit  //code ini digunakan untuk meng global kan variabel “menit”.
        if detik >= 59 :  //code ini digunakan untuk mengecek apakah nilai detik lebih dari sama dengan 59 atau tidak.
            detik = 0  //code ini digunakan untuk mengubah nilai variabel detik menjadi 0 apabila nilainya sama dengan 59 atau melebihinya.
            menit += 1  //code ini digunakan untuk menambah nilai variabel “menit” sebanyak 1 apabila nilainya sama dengan 59 atau melebihinya.
        detik += 1  //code ini digunakan untuk menambah nilai variabel detik sebanyak 1.
        teks1.config(text="detik : "+str(detik))  //code ini digunakan untuk memperbarui nilai dari label “teksDetik” yang ada di window.
        teks2.config(text="menit : "+str(menit))  //code ini digunakan untuk memperbarui nilai dari label “teksMenit” yang ada di window.
        teks1.after(1000, count) //code ini digunakan untuk berhitung sebanyak seribu perputaran program agar mendapatkan efek detik. Jika angka 1000 di ubah menjadi 100 maka perubahan nilai detik akan semakin cepat. Silahkan ubah untuk membuktikannya. Setelah berulang sebanyak 1000x maka akan memanggil metode “count” lagi.
    count()  //code ini digunakan untuk memanggil metode count yang sudah kita definisikan sebelumnya.


root = tk.Tk()  //code ini digunakan untuk memanggil “Tk” dari tkinter.
teksDetik = tk.Label(root, font = "Verdana 16 bold")  //code ini digunakan untuk memanggil sebuahlabel dengan jenis font “Verdana” dan ukuran “16” dan gaya font “bold” atau tebal. Lalu menyimpannya ke dalam variabel “teksMenit”.
teksMenit = tk.Label(root, font = "Verdana 16 bold")  //code ini digunakan untuk memanggil sebuahlabel dengan jenis font “Verdana” dan ukuran “16” dan gaya font “bold” atau tebal. Lalu menyimpannya ke dalam variabel “teksMenit”.
teksDetik.pack()  //code ini digunakan untuk memasukkan label yang ada di variabel “teksDetik”.
teksMenit.pack()  //code ini digunakan untuk memasukkan label yang ada di variabel “teksMenit”.

hitung(teksDetik, teksMenit)  //code ini digunakan untuk memanggil sebuah metode dengan nama “hitung” dan memasukkan “teksDetik” dan “teksMenit” sebagai sebuah parameter.

tombol = tk.Button(root, text='Stop', width=25, command=root.destroy)  //code ini digunakan untuk membuat tombol dengan nama “stop” dan memberikan perintah untuk keluar atau menutup window nya.
tombol.pack()  //code ini digunakan untuk memasukkan tombol yang sudah kita buat tadi.


root.mainloop()  //code ini digunakan agar window yang sudah tampil nantinya tidak langsung close secara otomatis.



Nah itu dia temen - temen penjelasan saya mengenai code program yang sudah saya bagikan sebelumnya.. Gimana ? Sudah cukup jelas kan temen - temen... Ya saya harap seperti itu ya.. Hehe.. Nah jika ada yang kurang di pahami, kalian bisa membacanya lagi secara perlahan... Namun, jika ada penjelasan yang kurang jelas atau ada yang ingin kalian tanyakan, kalian bisa menggunakan kolom komentar di bawah ini untuk bertanya... Insyaallah saya akan menjawab nya secepat yang saya bisa...


Oke sekian dulu ya temen - temen postingan saya kali ini.. Semoga apa yang sudah saya sajikan di atas dapat menambah pengetahuan dan ilmu baru bagi kalian.. Dan terimakasih ya sudah berkunjung dan membaca postingan saya kali ini.. Dan mohon maaf ya atas kekurangan ataupun ketidak jelasan yang ada di blog ini maupun pada postingan kali ini.. Jika kalian berkenan untuk menyampaikan kritik dan saran, kalian bisa menyampaikannya pada laman hubungi kami yang ada di blog ini ya...

Dan jangan lupa share ke temen kalian ya.. Hehe oke teriamakasi banyak ya dan sampai disini dulu.. Sampai jumpa di postingan saya yang lainnya ya temen - teme.. Oke terimakasi...

Wassalamualaikum wr. wb.
Previous
Next Post »
Thanks for your comment