Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Python实现定时弹窗提醒

Python实现定时弹窗提醒

巴扎黑
巴扎黑asal
2016-12-07 10:30:554856semak imbas

经常用电脑,一坐就是几个小时,总是忘记时间,所以觉得是不是找个定时提醒软件。网上找了还真有还很多,找了一个卫士什么的,装了。到时间以后自动锁屏倒计时。功能不错但是感觉功能太多。不知道大家现在用软件的时候有没有这种感觉,本来就是想要一种很简单的功能,但最惨的是装了一大堆软件,功能一大票但是没有自己用的。

       其实自己想的就是到时间以后弹窗提示休息就可以了。后来想想还是自己做一个吧。当然首选Python语言。

       首先需要一个定时弹窗具体的代码如下:

       程序使用自带的 Tkinter 不需要安装其他的包

       程序的主要功能:1、启动以后自动计时 2、计时完成后弹出窗口进行提示 (默认时间为30分钟)3、点击确定后重新进行计时

       程序的有一些问题:1、界面简单不精致(不过个人认为先达到功能 )2、休眠时不能够自动停止计时

# -*- coding: utf-8 -*-
import time, sys
# 判断python的版本然后import对应的模块
if sys.version < &#39;3&#39;:
from Tkinter import *
else:
from tkinter import *
mydelaymin = 30 #窗口提示的延迟时间,以分钟计
#------------------def-------------------
def showMessage():
#show reminder message window
root = Tk()  #建立根窗口
#root.minsize(500, 200)   #定义窗口的大小
#root.maxsize(1000, 400)  #不过定义窗口这个功能我没有使用
root.withdraw()  #hide window
#获取屏幕的宽度和高度,并且在高度上考虑到底部的任务栏,为了是弹出的窗口在屏幕中间
screenwidth = root.winfo_screenwidth()
screenheight = root.winfo_screenheight() - 100 
root.resizable(False,False)
#添加组件
root.title("Warning!!")
frame = Frame(root, relief=RIDGE, borderwidth=3)
frame.pack(fill=BOTH, expand=1) #pack() 放置组件若没有则组件不会显示
#窗口显示的文字、并设置字体、字号
label = Label(frame, text="You have been working 30 minutes! Please have a break!!", \
font="Monotype\ Corsiva -20 bold")
label.pack(fill=BOTH, expand=1)
#按钮的设置
button = Button(frame, text="OK", font="Cooper -25 bold", fg="red", command=root.destroy)
button.pack(side=BOTTOM)
root.update_idletasks()
root.deiconify() #now the window size was calculated
root.withdraw() #hide the window again 防止窗口出现被拖动的感觉 具体原理未知?
root.geometry(&#39;%sx%s+%s+%s&#39; % (root.winfo_width() + 10, root.winfo_height() + 10, 
(screenwidth - root.winfo_width())/2, (screenheight - root.winfo_height())/2))
root.deiconify()
root.mainloop()
#showMessage()
while True:
time.sleep(mydelaymin*60) #参数为秒
showMessage()

  如果在win下面,可能需要考虑如何自动运行。

    我使用的是批处理文件。具体如下:

    文件名为:rest_python.bat

    内容简单,就一行(如果有多个python版本注意修改):

Java代码  

python E:\rest.py

 

    同时需要一个后台运行这个批处理文件的文件。有点麻烦,如果有更简便的方法欢迎分享。

    文件名字为:silent_bat.vbe

    内容如下:

   

Java代码  

set ws=wscript.createobject("wscript.shell")  
ws.run"E:\rest_python.bat /start", 0

 

    然后把 silent_bat.vbe 文件拖入启动文件夹即可。(用快捷方式也可以)

 

    注意的几点:程序使用python2.7  系统 win7。

                        批处理文件需要根据你的文件存储位置进行更改。

                        记得加入启动文件夹。


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Python 字符串反转Artikel seterusnya:python 类以及继承操作代码示例