การใช้งาน Python GUI (Tkinter) : การสร้างนาฬิกาแบบ Digital

Post a reply


This question is a means of preventing automated form submissions by spambots.
Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: การใช้งาน Python GUI (Tkinter) : การสร้างนาฬิกาแบบ Digital

การใช้งาน Python GUI (Tkinter) : การสร้างนาฬิกาแบบ Digital

by ธวัชชัย แสนหาญ » 25/02/2019 11:45 am

การใช้งาน Python GUI (Tkinter) : การสร้างนาฬิกาแบบ Digital

การใช้งานPython GUI (Tkinter)
เป็นการสร้างนาฬิกาแบบ Digital โดยแสดงผลบน Label ด้วยการอ่านเวลาปัจจุบัน มาแสดงผลบน Label แต่เราต้อง
อัปเดตเวลาทุก 1 วินาที (1000 มิลลิวินาที) ซึ่งจากหัวข้อเรื่ององค์ประกอบพื้นฐานของวิดเจ็ต เราจะเห็นว่ามีเมธอด
after(time, function) ที่สามารถเรียก ฟังก์ชันขึ้นมาทํางานเมื่อครบกําหนดเวลาที่ระบุ ดังนั้น เราก็นําขั้นตอนการอ่าน
เวลาปัจจุบันไปสร้างไว้ในฟังก์ชัน แล้วใช้เมธอด after ของวิดเจ็ต เรียกฟังก์ชันตัวมันเองขึ้นมาทํางานทุก 1 วินาทีแบบ
Recursion เราก็จะได้เวลาที่อัปเดตต่อเนื่องไปเรื่อยๆ

รูปแบบการเรียกใช้

Code: Select all

lb_clock.after(1000, tick)     
#ให้เรียกฟังก์ชันตัวมันเองทุก 1 วินาที

โค้ดที่ใช้รันโปรแกรม

Code: Select all

from tkinter import *
from datetime import datetime

window = Tk()
window.title('Clock')
window.geometry('200x60')

lb_clock = Label(font='times 16')
lb_clock.pack(anchor=CENTER, expand=YES)

def tick():
    global curtime
    curtime = datetime.now().time()
    ftime = curtime.strftime('%H:%M:%S')
    lb_clock.config(text=ftime)
    lb_clock.after(1000, tick)      #ให้เรียกฟังก์ชันตัวมันเองทุก 1 วินาที

tick()          #เรียกฟังก์ชันขึ้นมาทำงานครั้งแรก
mainloop()
ผลลัพธ์การรันโปรแกรม
123.JPG
123.JPG (11.38 KiB) Viewed 1100 times
สรุป
ใช้เมธอด after ของวิดเจ็ต เรียกฟังก์ชันตัวมันเองขึ้นมาทํางานทุก 1 วินาทีแบบ
Recursion เราก็จะได้เวลาที่อัปเดตต่อเนื่องไปเรื่อยๆ

ช่องทางศึกษาเพิ่มเติม :baa:
เทคนิคการเขียน Python
บทเรียน Python
Programming - C/C++ & java & Python
บทเรียน Python GUI
บทเรียน Python Framework Flask

Top