2)Tkinter界面化小程序2.1 附源码项目from tkinter import ttk
import os
import tkinter.messagebox as message_box
windows = tkinter.Tk()
windows.title("Python定时关机")
# window 居中
windows.update() # update window ,must do
curWidth = 280 # get current width
curHeight = windows.winfo_reqheight() # get current height
scnWidth, scnHeight = windows.maxsize() # get screen width and height
# now generate configuration information
config = '%dx%d %d %d' % (curWidth, curHeight,
(scnWidth - curWidth) / 2, (scnHeight - curHeight) / 2)
windows.geometry(config)
# root 容器
root = ttk.LabelFrame(windows, text="关机命令")
root.grid(column=0, row=0, padx=15, pady=15)
# 提醒文本
tkinter.Label(root, text="输入时间").grid(column=0, row=0, sticky=tkinter.W)
tkinter.Label(root, text="选择").grid(column=1, row=0)
# 存储输入的值
time = tkinter.StringVar()
unit = tkinter.StringVar()
# 输入框
time_edit = tkinter.Entry(root, width=10, textvariable=time)
time_edit.grid(column=0, row=1, padx=4, sticky=tkinter.W)
time_edit.focus()
# 下拉单位选择
unit_arr = ('时', '分', '秒')
unit_chosen = ttk.Combobox(root, width=6, textvariable=unit, state='readonly')
unit_chosen['values'] = unit_arr
unit_chosen.grid(column=1, row=1)
unit_chosen.current(0)
def change_edit(to_time):
time_edit.delete(0, 10)
time_edit.insert(0, to_time)
unit_chosen.current(1)
# start
def start():
if time.get() and unit.get():
message_box.showwarning("选择完毕", "你的电脑将在多少 %s %s" % (time.get(), unit.get()))
# shutdown 的秒数
count_down_second = int(time.get())
if unit.get() == 'hour':
count_down_second *= 3600
elif unit.get() == 'minute':
count_down_second *= 60
# execute
os.system("shutdown -s -t %s" % count_down_second)
windows.quit()
# cancel
def cancel():
os.system("shutdown -a")
windows.quit()
# start 按钮
start_action = tkinter.Button(root, text="START", command=start)
start_action.grid(column=2, row=1)
# 文本
tip_label = tkinter.Label(root, text="倒计时关机")
tip_label.grid(row=2, column=0, pady=2)
# 快捷选择时间
fram = tkinter.Frame(root)
fram.grid(row=3, column=0, columnspan=3)
# 常用的时间
for i in range(2, 7):
button = tkinter.Button(fram, text=str(i * 15) "min", command=lambda x=i: change_edit(str(x * 15)))
button.grid(row=0, column=i - 2, padx=2, pady=2, sticky=tkinter.W)
# cancel 按钮
cancel_action = tkinter.Button(root, text="CANCEL", command=lambda: cancel())
cancel_action.grid(row=4, column=1, pady=10, sticky=tkinter.W)
2.2 效果展示
总结好啦,定时关机的小项目就over了。以后记得需要定时关机的就用这款代码哈哈哈~
想什么时候关机就什么时候关机嘛~ (这款代码仅供娱乐哈!)
完整的免费源码领取处:私信小编06即可啊!往期部分文章推荐——项目1.1 辞职小程序
【附Python版教学】“那些年用过的奇葩辞职理由”哈哈哈,看完笑掉牙。
项目1.3 视频播放器
用了都说好的Python专属无广告视频播放器,良心到想为它疯狂打call
项目2.3 宇宙星云图
【宇宙编码】厉害,生日那天:程序员小哥把天上的宇宙星云都送给女神了~
项目2.4 音乐播放器
【爆赞】一款“秀外慧中”的专属自己的音乐播放器~
项目3.2 自动换壁纸
【Python高级技能】超炫酷,电脑每天自动换壁纸,这个神器适合你。
项目3.3 艺术字签名
【艺术字签名生成器】】试卷家长签字居然被嫌弃了|“我觉得我还能再抢救一下,你看行嘛?“
文章汇总——项目1.0 Python—2021 |已有文章汇总 | 持续更新,直接看这篇就够了
(更多内容 源码都在文章汇总哦!!欢迎阅读~)