Computer >> Máy Tính >  >> Lập trình >> Python

Tạo đồng hồ bấm giờ bằng python

Đồng hồ bấm giờ được sử dụng để đo khoảng thời gian giữa hai sự kiện thường tính bằng giây đến phút. Nó có nhiều cách sử dụng như trong thể thao hoặc đo dòng nhiệt, dòng điện, v.v. trong thiết lập công nghiệp. Python có thể được sử dụng để tạo đồng hồ bấm giờ bằng cách sử dụng thư viện tkinter của nó.

Thư viện này sẽ có các tính năng GUI để tạo đồng hồ bấm giờ hiển thị Bắt đầu, Dừng Đặt lại lựa chọn. Thành phần quan trọng của chương trình đang sử dụng lable. after () mô-đun của tkinter.

label.after(parent, ms, function = None)
where
parent: The object of the widget which is using this function.
ms: Time in miliseconds.
function: Call back function

Trong chương trình dưới đây, chúng tôi sử dụng phương pháp này như một thành phần chính của chương trình và thiết kế một tiện ích hiển thị các tính năng GUI trong đồng hồ bấm giờ.

Ví dụ

import tkinter as tink
count = -1
run = False
def var_name(mark):
   def value():
      if run:
         global count
         # Just beore starting
         if count == -1:
            show = "Starting"
         else:
            show = str(count)
         mark['text'] = show
         #Increment the count after
         #every 1 second
         mark.after(1000, value)
         count += 1
   value()
# While Running
def Start(mark):
   global run
   run = True
   var_name(mark)
   start['state'] = 'disabled'
   stop['state'] = 'normal'
   reset['state'] = 'normal'
# While stopped
def Stop():
   global run
   start['state'] = 'normal'
   stop['state'] = 'disabled'
   reset['state'] = 'normal'
   run = False
# For Reset
def Reset(label):
   global count
   count = -1
   if run == False:
      reset['state'] = 'disabled'
      mark['text'] = 'Welcome'
   else:
      mark['text'] = 'Start'

base = tink.Tk()
base.title("PYTHON STOPWATCH")
base.minsize(width=300, height=200)
mark = tink.Label(base, text="Welcome", fg="blue", font="Times 25 bold",bg="white")
mark.pack()
start = tink.Button(base, text='Start',width=25, command=lambda: Start(mark))
stop = tink.Button(base, text='Stop', width=25, state='disabled', command=Stop)
reset = tink.Button(base, text='Reset',width=25, state='disabled', command=lambda: Reset(mark))
start.pack()
stop.pack()
reset.pack()
base.mainloop()

Các hình ảnh dưới đây cho thấy ba trường hợp khác nhau khi đồng hồ bấm giờ chạy.

Khởi động Stopwtach

Tạo đồng hồ bấm giờ bằng python

Stopwtach đang chạy

Tạo đồng hồ bấm giờ bằng python

Dừng Stopwtach

Tạo đồng hồ bấm giờ bằng python

Đặt lại Stopwtach

Tạo đồng hồ bấm giờ bằng python