本人使用python3

from tkinter import*
import os
from PIL import Image, ImageTk
root=Tk() a=Label(root,text="输入定时的时间(h):",width=20).grid(row=1,padx=20,pady=20) e=Entry(root,width=20)
e.grid(row=1,column=1,padx=20,pady=20) def ks():
global e
#e 是一个全局变量,在函数内修改它必须要加上这条语句
val=e.get()
c=float(val)
#将输入的字符串化为浮点数
if int(c)==c:
#如果浮点数等于它的整数,那么输入的就是就是一个整型的字符。 b=int(c)*3600
a='shutdown -s -t '+str(b)
os.system(a)else:
b=float(val)*3600 d=str(b)
e=d[0:-2]
#将b化为字符串,然后切片取小数点前的字符串,将小数点和后面的0去掉。 a='shutdown -s -t '+str(e)
os.system(a)
print('设置成功,将在'+str(val)+'小时后关机') def qx():
os.system('shutdown -a') Button(root,text="确定",width=20,command=ks).grid(row=2,column=0,padx=20,pady=20)
Button(root,text="取消",width=20,command=qx).grid(row=2,column=1,padx=20,pady=20) mainloop()

这里做的图形界面比较简单,仅仅是作为一个示范,下面谈谈我的思路,

我将该代码分为两个部分,第一:写出在windows下的定时关机代码(先不加tkinter模块)。第二:设计自己的tkinter界面

这里我将关机原始代码贴出来:

import os
def ds():
val=input("输入定时时间(h):")
c=float(val)
#将输入的字符串化为浮点数
if int(c)==c:
#如果浮点数等于它的整数,那么输入的就是就是一个整型的字符。 b=int(c)*3600
a='shutdown -s -t '+str(b)
os.system(a)
print('设置成功,将在'+str(val)+'小时后关机')
else:
b=float(val)*3600 d=str(b)
e=d[0:-2]
#将b化为字符串,然后切片取小数点前的字符串,将小数点和0去掉。 a='shutdown -s -t '+str(e)
os.system(a)
print('设置成功,将在'+str(val)+'小时后关机')
def qx():
os.system('shutdown -a')
print('取消成功')
def tc():
exit() while 1: sz=input("设置定时输入1|取消定时输入2|退出输入3:")
#注意sz是一个字符串 ,
if sz=='':
ds()
if sz=='':
qx()
else:
tc()

看一下这两段代码,当我们将这个原始代码用tkinter这个壳包起来的时候就需要稍微的改进了。大家可以自己琢磨,

值得一提的是关于globel的用用法,我们要将输入框Entry中的字符串赋值给e,那么e就是一个全局变量,而我们要在函数里修改这个函数就必须先声明一下 globel e。

这里的代码仅供参考,大家可自行设计,这里主要谈谈一个设计思路。

over!

python:基于tkinter的定时关机程的更多相关文章

  1. Python 代码控制Windows定时关机

    为了在规定时间内实现电脑关机,我使用python编写了几行代码,最简单的实现了关机操作,后续再进行其它功能的添加(操作页面,取消等) import os,time #获取命令行输入的关机时间 inpu ...

  2. Python基于tkinter.messagebox实现简易消息框、对话框

    库导入: import tkinter import tkinter.messagebox 有关提示框: tkinter.messagebox.showinfo(title=None, message ...

  3. python制作电脑定时关机办公神器,另含其它两种方式,无需编程!

      小编本人目前就是在电脑面前工作,常常会工作到凌晨两三点还在为自己的梦想奋斗着.有时在办公椅上就稀里糊涂睡着了,我相信有很多朋友和我一样,这样是很不好的.第一对身体不好,第二对电脑不好.   对身体 ...

  4. C语言/python实现定时关机

    1.python def shutdown(): print('(1)定时关机\n(2)取消定时关机\n(3)立即关机\n(4)关机重启') b = eval(input('请选择:\n')) if( ...

  5. 利用DOS批处理实现定时关机操作

    10月1放假回来,寝室晚上10:30就停电了,最无法让人理解的是第二天早上8:00才来电.原来晚上电脑都是不关机的,开着WiFi一直到天亮,可是现在不行了,电脑如果一直开着第二天早上起来电脑肯定没电, ...

  6. Python PEP 492 中文翻译——协程与async/await语法

    原文标题:PEP 0492 -- Coroutines with async and await syntax 原文链接:https://www.python.org/dev/peps/pep-049 ...

  7. python并发编程之gevent协程(四)

    协程的含义就不再提,在py2和py3的早期版本中,python协程的主流实现方法是使用gevent模块.由于协程对于操作系统是无感知的,所以其切换需要程序员自己去完成. 系列文章 python并发编程 ...

  8. Windows: 在系统启动时运行程序、定时计划任务、定时关机

    lesca今天介绍一些让系统在启动时,而非登录时,加载用户自定义的应用程序或脚本的方法,推荐度从前到后依次递减. 1. Windows任务计划(task scheduler) 用户可以按以下步骤进行操 ...

  9. python之gevent模块实现协程

    Python通过yield提供了对协程的基本支持,但是不完全.而第三方的gevent为Python提供了比较完善的协程支持. gevent是第三方库,通过greenlet实现协程,其基本思想是: 当一 ...

随机推荐

  1. WinAPI Hook

    1.抢先load 需要hook的dll,替换需要hook的函数的地址, 2.调用堆栈信息的获取: 3.内存信息的统计: 4.如何统计已经free掉的内存? 5.如何批量注入程序load的dll? IA ...

  2. 深谈CDQ分治

    关于CDQ分治我想我自己做过前面的题应该会了这种思想了吧,然后我是真的“会了”. 我想针对于偏序问题我是会了,我现在只会三维偏序了,脑子都是疼的. 但是 CDQ分治最主要的还是基于时间方面的分治思想, ...

  3. sublime 可能卡的原因

    在重新安装编辑器的时候,配置javascript提示,发现这个插件安装之后,sublime变得非常卡,按照我电脑的性能,同时开着的atom敲代码都不卡.于是把这个插件卸载之后,sublime变得非常流 ...

  4. document.forms用法示例介绍

    概述 forms 返回一个集合 (一个HTMLCollection对象),包含了了当前文档中的所有form元素. 语法 var collection = document.forms; documen ...

  5. 前端 HTML body标签相关内容 常用标签 表格标签 table

    表格标签 table 表格由<table> 标签来定义.每个表格均有若干行(由 <tr> 标签定义),每行被分割为若干单元格(由<td>标签定义).字母 td 指表 ...

  6. 各版本系统安装tesseract-ocr

    Mac版本 1.tesseract-ocr安装  brew install tesseract-ocr 注意:如果未安装brew命令,可以输入命令: brew官网:http://brew.sh /us ...

  7. what's the python之函数及装饰器

    what's the 函数? 函数的定义:(return是返回值,可以没有,不过没有的话就返回了None) def wrapper(参数1,参数2,*args,默认参数,**kwargs): '''注 ...

  8. 2 jmeter常用功能介绍-测试计划、线程组

    1.测试计划测试用来描述一个性能测试,所有内容都是基于这个测试计划的. (1)User Defined Variables:设置用户全局变量.一般添加一些系统常用的配置.如果测试过程中想切换环境,切换 ...

  9. win7 64位共享打印机

    故障一 链接的电脑提示需要密码 处理步聚:取消win7共享计算机上网络的密码保护共享 1.查看网上邻居链接局域网的网络的网络防火墙设置. 2.更改链接局域网的网络的防火墙的更改高级共设置. 3.关闭链 ...

  10. Redis入门到高可用(九)——有序集合zset

    一.数据结构 集合与有序集合,列表与有序集合的对比 二.主要API zadd 将一个或多个 member 元素及其 score 值加入到有序集 key 当中. zrem 移除有序集 key 中的一个或 ...