导言
Windows7系统有一个很好的桌面小插件就是桌面时钟。但是近期Windows7停服导致此系统不再那么安全。许多升级Windows10的朋友发现自己找不到桌面小插件了。使用第三方插件总感觉没有那么安全。
别人的终归是别人的,还是自己写一个安全的程序好用些。话不多说上代码。
主程序
import time
import tkinter as tk
class Clock(tk.Tk):
def __init__(self) -> None:
super().__init__()
#设置窗口初始位置
self.x, self.y = 0, 0
#设置窗口初始大小
self.window_size = '265x30'
#设置窗口置顶
self.attributes("-topmost", 1)
#初始化时间字符串
self.time_text = ""
#去掉标题栏
self.overrideredirect(1)
#设置透明度(取值范围:[0,1])
self.attributes("-alpha", 0.4)
#添加窗口移动事件
self.bind("<B1-Motion>",self.move)
#设置字符标签
self.lbl = tk.Label(self,
#文本内容是时间字符串
text=self.time_text,
#设置字体大小及格式
font=("ds-digital", 20),
#设置背景色
background="black",
#设置字体颜色
foreground="cyan")
#添加到窗口
self.lbl.pack()
#更新时间
self.update_time()
def move(self, event):
"""窗口移动事件"""
self.geometry(f"{self.window_size}+{(event.x - self.x) + self.winfo_x()}+{(event.y - self.y) + self.winfo_y()}")
def update_time(self):
#设置时间格式
self.lbl.config(text=time.strftime("%Y-%m-%d %H:%M:%S"))
#设置更新时间频率
self.after(1000, self.update_time)
#程序主函数
Clock().mainloop()
打包
代码每行都有注释,相信大家都能看懂。当然可以说这就可以结束了,但是每次运行都需要打开开发环境并运行此程序,还是很麻烦。
那就打包成exe文件并添加到开机启动项吧。
首先检查python里面有没有pywin32和pyinstaller。可以使用pip list
命令。
如果没有,可以使用pip install pywin32
和pip install pyinstall
安装它。
然后打开pyinstall路径(默认在C:\Users\DELL\AppData\Local\Programs\Python\Python38-32\Scripts
里面。)
记住此路径,打开cmd并输入cd C:\Users\DELL\AppData\Local\Programs\Python\Python38-32\Scripts
切换到此目录,然后输入pyinstaller -F -w D:\Users\SEL\IdeaProjects\src\桌面时钟\2.py
即可。其中-F为生成单个可执行文件.exe,-w可以屏蔽控制台窗口,只显示桌面时钟。
当然也可以更换图标,命令是pyinstaller -F -w -i D:\Desktop\picture.ico D:\Users\SEL\IdeaProjects\src\桌面时钟\2.py
第一个路径是图标文件.ico路径,第二个是python代码路径
生成的可执行文件位置系统会直接显示出来。
然后打开此文件,在运行窗口输入shell:startup
打开启动目录,把此文件放进去即可。也可以在可执行程序路径下右键生成快捷方式,把此快捷方式放进启动目录里。