主頁 > 知識庫 > python tkinter實現定時關機

python tkinter實現定時關機

熱門標簽:地圖制圖標注位置改變是移位嗎 315電話機器人廣告 南京銷售外呼系統(tǒng)軟件 浙江電銷卡外呼系統(tǒng)好用嗎 地圖標注微信發(fā)送位置不顯示 房產電銷外呼系統(tǒng) 地圖標注的意義點 蓋州市地圖標注 上海機器人外呼系統(tǒng)哪家好

本文實例為大家分享了python tkinter實現定時關機的具體代碼,供大家參考,具體內容如下

很早以前寫的,懶得修改,代碼很簡單,適合初學者

運行效果圖如下:

使用注意

  • 設定時間后點擊開始即可實現定時關機,同時窗口也會關閉
  • 想要取消關機的話,再次打開,點取消即可

代碼如下

import os,time
# import multiprocessing
import threading
from tkinter import *
from tkinter import ttk
import tkinter.messagebox as message_box
window =Tk()
window.title('auto_shutdown')
window.geometry('240x180')
window.resizable(False, False)
window.update() 
var = StringVar()
var1 = StringVar()
var2 = StringVar()
# 設置func為守護線程
def funcs():
 t = threading.Thread(target=func)
 t.setDaemon(True)
 t.start()
# 執(zhí)行自動關機指令
def func():
 #彈出messagebox警告提示
 message_box.showwarning("Warning", "Your pc will shutdown at %s : %s" % (var.get(),var1.get()))
 print('wohaizai')
 mytime = time.strftime('%H:%M:%S')
 h2 = mytime[0:2]
 m2 = mytime[3:5]
 s2 = mytime[6:]
 print(h2)
 print(m2)
 print(s2)
 print(var.get())
 print(var1.get())
 # 算出距離關機時間的秒數
 count_down_second=-int(h2)*3600-int(m2)*60-int(s2)+int(var.get())*3600+int(var1.get())*60+int(var2.get())
 # 如果關機設置在第二天,結果加86400(一天的總秒數)
 if count_down_second0:
  count_down_second=count_down_second+86400
 os.system("shutdown -s -t %s" % count_down_second)
 print(count_down_second)
 window.quit()


# 快捷關機選項入口
def fun_set1():
 cb_h.current(18)
def fun_set2():
 cb_h.current(21)
def fun_set3():
 cb_h.current(22)
def fun_set4():
 cb_h.current(23)
def funcq():
 os.system('shutdown -a')

# 定義三個容器,方便布局
root = ttk.LabelFrame(window, text="定時關機")
root.grid(column=0, row=0,padx=2, pady=2)
root1 = ttk.LabelFrame(window, text="常用時間")
root1.grid(column=1, row=0,padx=2, pady=2)
root2 = ttk.LabelFrame(window, text="開始")
root2.grid(column=0, row=1,columnspan=2,padx=2, pady=2)




Label(root,text=':').grid(column=1, row=0,padx=2, pady=5)

cb_h = ttk.Combobox(root,width=3,textvariable =var)
a = []
for i in range(10):
 a.append(('0'+str(i)))
for i in range(10,24):
 a.append(i)
 cb_h['values'] =tuple(a)
cb_h.current(0)
cb_h.grid(column=0, row=0,padx=2, pady=5)


cb_m = ttk.Combobox(root,width=3,textvariable =var1)

b = []
for i in range(10):
 b.append('0'+str(i))

for i in range(10,60):
 b.append(str(i))
 cb_m['values'] =tuple(b)
cb_m.current(0)
cb_m.grid(column=2, row=0,padx=2, pady=5)

cb_s = ttk.Combobox(root,width=3,textvariable =var2)

c = []
for i in range(10):
 c.append('0'+str(i))

for i in range(10,60):
 c.append(str(i))
 cb_s['values'] =tuple(c)
cb_s.current(0)
cb_s.grid(columnspan=3, row=1,padx=2, pady=6)



Button(root1,text = '18:00',command = fun_set1).grid(column=0, row=0,padx=2, pady=2)
Button(root1,text = '21:00',command = fun_set2).grid(column=1, row=0,padx=2, pady=2)
Button(root1,text = '22:00',command = fun_set3).grid(column=0, row=1,padx=2, pady=2)
Button(root1,text = '23:00',command = fun_set4).grid(column=1, row=1,padx=2, pady=2)



b1=Button(root2,text = '開始',command = funcs,height =2,width =6)
b1.grid(column=0, row=0,padx=24, pady=2)
b1=Button(root2,text = '取消',command = funcq,height =2,width =6)
b1.grid(column=1, row=0,padx=24, pady=2)

root.mainloop()

項目的github地址

ps:已打包為exe格式,可在dist目錄下找到

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • python用tkinter開發(fā)的掃雷游戲
  • python tkinter Entry控件的焦點移動操作
  • python3.7.2 tkinter entry框限定輸入數字的操作
  • python使用tkinter實現透明窗體
  • Python基于Tkinter開發(fā)一個爬取B站直播彈幕的工具
  • Python基礎之tkinter圖形化界面學習
  • Python實戰(zhàn)之用tkinter庫做一個鼠標模擬點擊器
  • python基于tkinter制作m3u8視頻下載工具
  • Python中tkinter的用戶登錄管理的實現
  • 上帝為你開了一扇窗之Tkinter常用函數詳解

標簽:克拉瑪依 雙鴨山 臨汾 貴州 赤峰 日照 陽泉 金華

巨人網絡通訊聲明:本文標題《python tkinter實現定時關機》,本文關鍵詞  python,tkinter,實現,定時,關機,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python tkinter實現定時關機》相關的同類信息!
  • 本頁收集關于python tkinter實現定時關機的相關信息資訊供網民參考!
  • 推薦文章