用Python做乙個久坐提醒小助手

2021-10-02 16:42:31 字數 2754 閱讀 5202

不論是日常的工作還是學習,現代年輕人在電腦螢幕時長資料能讓人驚掉下巴,繼而引發一系列身體不適的現象。小李也是久坐族中的一員,為了時刻提醒自己起來活動活動,我開發了一款基於pythongui程式設計的久坐提醒小助手。

整體的構思類似於乙個番茄時鐘,提供乙個倒計時功能並且在完成計時時發出警告。主要分為如下幾個模組,一是時間選擇模組,二是按鈕模組,控制計時開始、暫停以及恢復,三是倒計時顯示模組,並在倒計時完成之後發出警告。

這一塊主要是組合框的設計,並傳遞所選擇時間的具體數值,非常簡單。

label2=tkinter.label(self.win,text='請選擇時間間隔:').place(x=40,y=20)

self.cv=tkinter.strin**ar()

self.com=ttk.combobox(self.win,textvariable=self.cv)

self.com.place(x=190,y=20)

self.com['value']=("15分鐘","30分鐘","45分鐘","60分鐘")

self.com.current(0)

self.com.bind("<>", self.get_time)

def get_time(self,event):

self.minute=int(self.com.get()[:-2])

這一塊主要是三個按鍵功能的設計,是軟體的核心部分。實現的功能與按鈕的名稱完全一致,當選擇了定時的時間,按下開始按鈕時,觸發倒計時的秒錶,並實時顯示;按下暫停之後需要暫停倒計時的計數;按下繼續之後需要繼續倒計時的計數。

其中倒計時的計算,我是通過利用獲取目標學習時長的數值加上當前時間計算得到最終計時完成的時間,本來是非常完美的,但是引入了暫停和繼續開始這兩項功能之後需要做出一定程度的改進,那就是倒計時的計算需要補充暫停的時長。

button=tkinter.button(self.win,text="開始",command=self.alarm,width=6,height=1)

button.place(x=40,y=60)

button2=tkinter.button(self.win,text="暫停",command=self.pause,width=6,height=1)

button2.place(x=180,y=60)

button3=tkinter.button(self.win,text="繼續",command=self.go_on,width=6,height=1)

button3.place(x=320,y=60)

def alarm(self):

self.now=datetime.datetime.now()

delta=datetime.timedelta(minutes=self.minute)

self.target=self.now delta

self.win.after(0,self.update)

def pause(self):

self.pause_time=datetime.datetime.now()

self.flag=true

self.win.after_cancel()

def go_on(self):

self.go_on_now=datetime.datetime.now()

self.pause_long=self.go_on_now-self.pause_time self.pause_long

self.flag=false

self.win.after(0,self.update)

把這個倒計時顯示模組放置於最醒目的位置,並在完成當前計時時發出警告的訊息。核心便是下面的update函式,實現倒計時的實時更新。

self.label=tkinter.label(self.win,text=str(countdown)[:7],font=("黑體",70))

self.label.place(x=60,y=130)

if str(countdown)[:7]=='0:00:00':

tkinter.messagebox.showwarning(title="fbiwarning",message="您已工作{}分鐘,請馬上離開座位休息片刻!".format(self.minute))

self.flag=true

self.win.after_cancel()

if self.flag==false:

self.win.after(1,self.update)

最後,希望大家在工作學習之中,經常站起來活動活動筋骨,放鬆放鬆大腦,多呼吸新鮮的空氣,畢竟身體才是革命的本錢!

用C 做乙個簡單的下課提醒

數學老師經常拖堂,又是用的雲平台的win7系統,於是做題突發奇想寫了個簡單的下課提醒系統,由於我們老師從不點關機所以只裝一次就行了。從檔案中讀入下課時間 精確到分 下課時彈出視窗提示是否下課,如果老師拒絕下課就放老師醜照,每次都是這樣。如果不是下課時間,重複 continue int message...

用python寫乙個定時提醒程式

較基礎,適合python新手及對python感興趣的同學閱讀。1。等待 3。重複 1,2兩步。因為我們要在一天內休息多次,迴圈3次好了。開啟python idle 讓我們開始吧!total breaks 3 重複3次 break count 0 while break count total bre...

用php做乙個分頁,用php做的乙個分頁小程式

require mysql conn.conf 以下統計資料庫中的最早和最新記錄時間 以下統計資料的最早時間 query begintime select mydate,mytime from temprature order by sn asc result begintime mysql que...