悠度科技 发表于 2018-12-29 15:02

闲的蛋疼写的电脑定时关机程序,共40行代码,附未编译的py文件和可直接使用的exe文件

本帖最后由 悠度科技 于 2018-12-29 15:24 编辑

一开始只是单纯的想自动关机
然后想方便点   点一下就自动关机。。。 那就bat批处理吧
呃。。。固定时间怎么行    必须有用户输入    哇输入的万一不是数字???
呃,,,字符串转数字   判断是不是数字?    bat好麻烦    那就用python吧   python简单点
呃,有设置定时关机就要有取消吧?
哇,都写好了   干脆做一个UI 编译成exe好了   还能给朋友用


用tkinter做了个简单的UI


代码如下
from tkinter import *    #UI库
from tkinter import messagebox#消息弹出
import os         #用于执行cmd命令
import string       #StringVar要用    字符串钩子

def text():          #判断是否是数字并将小时处理为秒
    i=time.get()   #获得字符串钩子的值
    try:            #错误抓捕   判断是否为数字
      i=str(int(float(i)*60*60))
    except ValueError:
      messagebox.showwarning(title="输入错误",message="请输入一个数字!")#警告消息弹窗
    else:
      result=shutdown(i)
            
def shutdown(i=False):   #执行cmd语句以设置定时关机
    if i==False:
      result=os.system("shutdown -a")
      if result:
            messagebox.showwarning(title="错误",message="当前无定时关机任务")
            return 0
    else:
      result=os.system("shutdown -s -t "+i)
      if result:
            result=os.system("shutdown -a")
            if not result:
                result=os.system("shutdown -s -t "+i)

    if not result:
      messagebox.showinfo(title="状态信息",message="成功!")
    else:
      messagebox.showerror(title="错误",message="未知原因失败")
      
soft=Tk()
soft.geometry('155x90+885+465')       #初始化窗口大小信息
soft.resizable(0, 0)                  #设置窗口大小不可更改
text1=Label(soft,text="您需要几小时后关机?",compound="center").grid(row=0,column=0,columnspan=2,padx=0,pady=0)   #文本
time=StringVar()             #声明字符串钩子
time.set("1")                #设置初始值
text2=Entry(soft,textvariable=time).grid(row=1,column=0,columnspan=2,padx=5,pady=0)          #设置文本框    grid为设置在窗口初始化时的位置(表格方式)
button1=Button(soft,text="取消任务",command=shutdown).grid(row=2,column=0,padx=5,pady=10)
button2=Button(soft,text="设置任务",command=text).grid(row=2,column=1,padx=5,pady=10)soft.mainloop() #运行


因为用户组只能上传3M所以这个是只有py文件的



下面是链接有exe文件和py文件   exe文件可以直接用   支持小数的比如0.1小时   1.6小时等等
http://nas.900b.cn/sharing/OTsc3w6rD

悠度科技 发表于 2018-12-29 15:20

KSTG_茶飘香 发表于 2018-12-29 15:16
定点:几号几点几分,更人性化一点,这个完全是dos命令啊。

可以的   有时间可以写一下   这个只是一个呃。。。自己用来玩的\笑哭      没事干的时候写一下试试,逻辑上并不难    感谢提意见啦

悠度科技 发表于 2018-12-29 20:29

netsparker 发表于 2018-12-29 16:47
一个cmd命令就搞定了
改成批处理简单粗暴
shutdown -s -t 3600 -c "傻屌们,我要 ...

主要就是数据处理
不能输入中文
判断是不是数字
然后再加上取消功能

bat判断是不是数字很乱

babyxinloveyou 发表于 2018-12-29 15:07

厉害了,学习

Twoz 发表于 2018-12-29 15:13

哈哈哈,套个壳可以找找vc了

额微粒波地 发表于 2018-12-29 15:14

.py怎么编译成.exe呀?你可以出个教程贴么?

KSTG_茶飘香 发表于 2018-12-29 15:16

定点:几号几点几分,更人性化一点,这个完全是dos命令啊。

悠度科技 发表于 2018-12-29 15:18

额微粒波地 发表于 2018-12-29 15:14
.py怎么编译成.exe呀?你可以出个教程贴么?
你可以百度下   pyinstaller   百度上有很多教程的

Jxiaoming520 发表于 2018-12-29 15:19

支持一下

午夜飘雪 发表于 2018-12-29 15:21

是不是设置成具体时间更好呢

依旧沉沉 发表于 2018-12-29 15:26

python有没有前台页面~
页: [1] 2 3 4
查看完整版本: 闲的蛋疼写的电脑定时关机程序,共40行代码,附未编译的py文件和可直接使用的exe文件