IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 记录一个基于Python的纪念日天数计算桌面小控件 -> 正文阅读

[Python知识库]记录一个基于Python的纪念日天数计算桌面小控件

实验室摸鱼期间写了一个在桌面上可以显示纪念日的小控件,结合上一篇文章读者应该知道为什么写以及给谁写哈哈^-^

首先是获取今天的日期,利用datetime库很轻松就可以实现

now = datetime.datetime.now()

再者就是计算与指定日期相隔的时间

firstday = datetime.datetime.strptime('2021-09-19', '%Y-%m-%d')
day = now - firstday

这样基本的功能已经实现了

后面就是用tkinter制作界面,为了美观,要做到? 界面有一定的透明度、界面小巧、最好去掉标题栏

#去掉标题栏
self.overrideredirect(1)
#设置透明度(取值范围:[0,1])
self.attributes("-alpha", 0.4)

最后我用了四个label控件来显示内容,其中两个label控件显示的是变量

附上完整代码

import time
import tkinter as tk
import datetime
firstday = datetime.datetime.strptime('2021-09-19', '%Y-%m-%d')
now = datetime.datetime.now()
day = now - firstday
print(now.date())
class Clock(tk.Tk):
    def __init__(self) -> None:
        super().__init__()
        #设置窗口初始位置及大小
        self.geometry("390x60+1530+980")
        #设置窗口置顶
        # 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=now.date(), font=("黑体", 14), background="black", fg="red", width=40, height=0).place(x=0, y=0, anchor='nw')
        self.lbl2 = tk.Label(self, text="私たちは", font=("黑体", 14), background="black", fg="red", width=12, height=2).place(x=0, y=20, anchor='nw')
        self.lbl3 = tk.Label(self, text=day.days, font=("黑体", 14), background="black", fg="red", width=3, height=2).place(x=100, y=20, anchor='nw')
        self.lbl4 = tk.Label(self, text="日間くらい付き合いました", font=("黑体", 14),  background="black",fg="red", width=27, height=2).place(x=122, y=20, anchor='nw')

    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)

    def calculate1(self):
        day = now - firstday
        return day.days
    # 日期计算
    def calculate2(a):
        x = datetime.timedelta(days=a)
        day = firstday + x
        return day.date()
#程序主函数
Clock().mainloop()

我把它放在了屏幕的右下角,效果是这样的

?利用pyinstaller打包成exe文件。win+R,输入msconfig,将打包后的程序快捷方式添加到开机自动项中去,这样开机后,程序会自动在桌面显示。再也不用担心忘记纪念日而被女友暴揍了^0^!

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-09-27 14:02:00  更:2021-09-27 14:03:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:43:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码