许多朋友喜欢使用桌面便签功能,实际上就是一个桌面小挂件,类似上图所示的软件(图片来自网络)

类似的悬浮小挂件效果,实际上在Python最简单的GUI库Tkinter中就能实现。然而在Tkinter的官方文档中,没有对这部分特性的描述,要想深入学习Tkinter,我们必须钻研tcl/Tk库的文档,相关Tk文档传送门

其主要实现思路是,调整窗口透明度,设置窗口处于顶层,去除窗口边框。
这就需要给Tkinter的根窗口设置一些feature,可以调用窗口对象的wm_attributes函数来设置。具体feature说明,请查看上述文档

import tkinter as tkroot = tk.Tk()root.wm_attributes("-alpha", 0.4)        # 透明度(0.0~1.0)
root.wm_attributes("-toolwindow", True)  # 置为工具窗口(没有最大最小按钮)
root.wm_attributes("-topmost", True)     # 永远处于顶层# 还可以调用如下方法去除窗口边框
# root.overrideredirect(True)
root.mainloop()

效果如下:

如果去除了窗口边框,则窗口无法响应鼠标拖动,这时候我们就得想办法自己监听并处理鼠标事件,来实现窗口跟随鼠标移动。关于拖动事件的处理,我已经做了一个简单封装DragWindow 源码地址

下载源码,使用如下

# 导入DragWindow类
root = DragWindow()
root.set_window_size(200, 200)
root.set_display_postion(500, 400)
tk.Button(root, text="Exit", command=root.quit).pack(side=tk.BOTTOM)root.mainloop()

对Tkinter学习感兴趣,推荐观看博主的 tkinter 详解视频教程

关注我的公众号:编程之路从0到1

Python Tkinter 实现桌面小挂件相关推荐

  1. python点名代码_基于python tkinter的点名小程序功能的实例代码

    基于python tkinter的点名小程序功能的实例代码,花名册,次数,窗口,未找到,初始化 基于python tkinter的点名小程序功能的实例代码 易采站长站,站长之家为您整理了基于pytho ...

  2. python制作一个桌面小工具

    python实现一个桌面小工具,制作一个桌面的便签提醒工具 参考代码:https://github.com/cosven/memo 参考链接:https://www.jb51.net/article/ ...

  3. python剪刀石头布程序_使用Python Tkinter实现剪刀石头布小游戏功能

    编写剪刀石头布游戏 让我们使用Python 3和Tkinter开发相同的游戏.我们可以将游戏命名为Rock-Paper-Scissors-Lizard-Spock. 规则和玩法 ock crushes ...

  4. python实现剪刀石头布_用Python Tkinter实现剪刀石头布小游戏的方法

    用Python Tkinter实现剪刀石头布小游戏的方法 发布时间:2020-12-07 10:38:11 来源:亿速云 阅读:90 作者:小新 这篇文章将为大家详细讲解有关用Python Tkint ...

  5. 用Python实现自制桌面宠物,变出一个桌面小挂件

    前言 就喜欢自己自定义一些小玩意,今天就来分享一些制作桌面宠物的素材,还有代码 相关文件 声明:图片素材源于网络,侵歉删. 开发工具 Python版本:3.6.4 相关模块: PyQt5模块: 以及一 ...

  6. 【实例】Python tkinter 实例 桌面便签

    1. 前言 最近要做的事情很多,琢磨着用 Python 写一个桌面便签的程序. 效果: 文件框架: jnote |-- notes #存储便签的文件夹 |-- jnote.py 接下来,我们开始编写便 ...

  7. 如何用Python Tkinter实现剪刀石头布小游戏?

    编写剪刀石头布游戏 让我们使用Python 3和Tkinter开发相同的游戏.我们可以将游戏命名为Rock-Paper-Scissors-Lizard-Spock. 规则和玩法 Rock crushe ...

  8. 【实例】用 Python tkinter 开发 桌面便签

    1. 前言 最近要做的事情很多,琢磨着用 Python 写一个桌面便签的程序. 效果: 文件框架: Note |-- notes.txt # 存储便签的文件夹 |-- Note.py 2. 代码 话不 ...

  9. python小工具开发_使用Python制作一个桌面小工具

    今天,我们制作一个有意思的小工具,利用Python获取历史上的今天发生的事情. [分析] 个人总结了一下,"历史上的今天"有很多调用接口.有很多调用接口都是收费的或者就是免费但限制 ...

最新文章

  1. P2245 星际导航
  2. 《深入理解java虚拟机》
  3. The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xm
  4. 安全开发之碰撞检测与伤害计算逻辑
  5. JAVA中string的赋值_Java中关于String赋值的两种形式
  6. F#年度调查结果概述
  7. 《Pytorch - RNN模型》
  8. Java实验7 四、Java异常类(2)创建自己的日期错误异常类
  9. 转载:Rootkit总结
  10. 盖世兔I9100刷机心得
  11. 自我介绍计算机应用技术,计算机应用专业的新生自我介绍
  12. 有关c基础指针需要注意的几个点!
  13. Git + Github初入门
  14. OpenCVSharp(C# OpenCV)图像去水印实例(二) 去除水印并保留文本原始色彩
  15. 数据结构与算法之一(书籍篇)
  16. B站韩顺平java学习笔记(六)--面向对象编程章节
  17. openvpen最新安卓中文版_Zedge app官方下载-Zedge最新版本2020v6.8.4 安卓中文版-腾牛安卓网...
  18. 李开复投资的创新奇智两大硬伤:缺少落地场景和商业模式模糊
  19. 编写自己的驱动过游戏保护-需要具备的理论知识
  20. 【ucharts】uniapp -- 使用秋云 ucharts echarts高性能跨全端图表组件

热门文章

  1. 论文泛读记录(多模情感分析/探测;厌恶语音探测;属性级情感分析;CVPR2022和ACL2022 三元组/对比学习/视觉语言预训练/机器翻译/预训练模型/机器阅读理解)
  2. Cocos2d-x学习笔记(十五)--------物理引擎
  3. 先知XSS挑战赛题解 - Exploiting the unexploitable
  4. Win7 IIS配置时hresult:0x80070020错误解析
  5. 纯 CSS 实现科技感十足的暗黑字符雨动画
  6. mtk android 笔记,Android驱动笔记(9)——MTK平台Sensor Bring Up
  7. 在“提示”框中:管理Android音频配置文件,Android上的Google书签和电缆固定
  8. jcenter使用小结
  9. 什么是 Object Tracking - SOT MOT
  10. POJ - 1376 Robot