有一个小需求希望在wx下建立的托盘区图标上显示气球消息,很尴尬的是wx.TaskBarIcon不像wx.Window等有GetHandle方法,无法直接获得句柄.解决的办法1.自己重写TaskBarIcon... 2.直接遍历找到句柄(更通用麻烦些).据说wxpython在2.9后会加一个wx.NotificationMessage方法,但是2.9....哪年月有动静呢?
#coding: cp936
import win32gui
import win32con
import time
class TestTaskbarIcon:
def __init__(self):
# 注册一个窗口类
wc = win32gui.WNDCLASS()
hinst = wc.hInstance = win32gui.GetModuleHandle(None)
wc.lpszClassName = "PythonTaskbarDemo"
wc.lpfnWndProc = {win32con.WM_DESTROY: self.OnDestroy,}
classAtom = win32gui.RegisterClass(wc)
style = win32con.WS_OVERLAPPED | win32con.WS_SYSMENU
self.hwnd = win32gui.CreateWindow( classAtom, "Taskbar Demo", style,
0, 0, win32con.CW_USEDEFAULT, win32con.CW_USEDEFAULT,
0, 0, hinst, None)
hicon = win32gui.LoadIcon(0, win32con.IDI_APPLICATION)
nid = (self.hwnd, 0, win32gui.NIF_ICON, win32con.WM_USER+20, hicon, "Demo")
win32gui.Shell_NotifyIcon(win32gui.NIM_ADD, nid)
def showMsg(self, title, msg):
# 原作者使用Shell_NotifyIconA方法代替包装后的Shell_NotifyIcon方法
# 据称是不能win32gui structure, 我稀里糊涂搞出来了.
# 具体对比原代码.
nid = (self.hwnd, # 句柄
0, # 托盘图标ID
win32gui.NIF_INFO, # 标识
0, # 回调消息ID
0, # 托盘图标句柄
"TestMessage", # 图标字符串
msg, # 气球提示字符串
0, # 提示的显示时间
title, # 提示标题
win32gui.NIIF_INFO # 提示用到的图标
)
win32gui.Shell_NotifyIcon(win32gui.NIM_MODIFY, nid)
def OnDestroy(self, hwnd, msg, wparam, lparam):
nid = (self.hwnd, 0)
win32gui.Shell_NotifyIcon(win32gui.NIM_DELETE, nid)
win32gui.PostQuitMessage(0) # Terminate the app.
if __name__ == '__main__':
t = TestTaskbarIcon()
t.showMsg("出来吧!", "奥特曼!")
time.sleep(5)
win32gui.DestroyWindow(t.hwnd)
1. 除了算法设计时, 使用python真的很简单.
2. 会用python没什么, 还得会用千奇百怪的东西, 比如这个
3. 不经常对windows开发的人,还是常备msdn和baidu/google才不会慌马脚..
程序有改动,尽量缩减,原文请见:
写道
http://www.3snews.net/html/50/550-20986.html
分享到:
相关推荐
需要注意的是,修改扩展名的方法只适用于Windows平台下的Python安装。原因在于只有Windows版的Python支持以.pyw为后缀的脚本文件。当一个文件被赋予.pyw扩展名时,其运行方式与使用pythonw.exe执行脚本相同,即不会...
3.7.17版本是Python编程语言的一个稳定版本,它在Windows操作系统上提供了一个安装包,使用户能够轻松安装和配置Python环境。该安装包被命名为python-3.7.17-full.exe,是一个完整的安装程序,包含了Python解释器、...
一款可以缩小到托盘图标的桌面应用代码实例,无加密,代码注释清晰,可以帮助你快速实现一个可以最小化到任务栏,通知区的桌面应用。 你可以用它: 1.制作自己的桌面应用软件【支持关闭后最小化到托盘,点击托盘...
Python 3.8.20的Windows安装包为Windows用户提供了方便快捷的Python环境搭建途径,使得用户能够迅速投入到Python编程之中,利用Python强大的功能和简洁的语法进行软件开发和问题解决。无论是个人学习还是企业项目...
在Windows环境下使用Python,通常需要考虑一些特定的配置和工具,比如设置环境变量以便在命令行中直接运行Python,或者安装集成开发环境(IDE),如Visual Studio Code或PyCharm,以提供代码编辑、调试和项目管理等...
windows下的python环境,2.5版本的,绝对可以满足你的需求
总结一下,"python windows 系统清屏插件.zip"提供的ClearWindow插件为Python IDLE在Windows环境下提供了方便快捷的清屏功能,用户可以通过"Ctrl+L"快捷键实现屏幕的即时清理。这种增强用户体验的小工具对于提高开发...
Python 64位版本在Windows操作系统上的应用是一个重要的软件开发话题。64位版本的Python相较于32位版本,能够处理更大的内存空间,这在处理大量数据或运行内存密集型应用时尤其有利。以下是关于“Python 64bit ...
5. 验证安装:安装完成后,可以在命令提示符下输入`python --version`来检查Python版本,确认安装成功。 对于初学者,理解Python的安装和环境配置至关重要,这直接影响到后续的编程体验。同时,了解Python的版本...
`Tools`目录下有Python的辅助工具和脚本,例如`pydoc`(用于生成和显示文档)、`2to3`(用于将Python 2代码转换为Python 3)和其他实用工具。 `DLLs`目录包含Python运行所需的动态链接库(DLL),这些文件在Windows...
Windows amd64版本的Python安装包是专为64位Windows操作系统设计的,这些版本涵盖了3.7到3.12的多个Python迭代。让我们深入探讨一下这些版本的特性以及如何在Windows上安装和使用Python。 首先,Python 3.7引入了...
自行编译的 python 3.7.11 windows install 64bit 安装包
python 3.10.16 windows install 安装包是一个为Windows操作系统用户准备的Python编程语言安装程序。Python是一种广泛使用的高级编程语言,以其可读性和简洁的语法而闻名。它适用于多种编程范式,包括面向对象、命令...
在本文中,我们将深入探讨如何使用Python在Windows操作系统下实现数据包的抓取与解析。首先,我们需要了解的背景信息是,系统环境为Windows 7,选用Python 2.7而不是Python 3,主要是因为Scapy库在Python 2中的安装...
这个程序每次运行都不一样哦! 让你学会如何使用random和turtle做一个随机气球 适合新手下载和学习(可以到我的主页看看)
针对Windows用户的Python安装包,通常提供了便捷的安装向导,使得用户可以轻松地将Python环境安装到Windows操作系统上。安装过程通常包括以下几个步骤: 1. 下载适合Windows操作系统的Python安装包。 2. 运行安装...
Python操作Windows应用窗口是一个实践性极强的话题,它涉及到如何利用Python语言与Windows操作系统下的应用程序进行交互。通过编写脚本,我们可以在不直接使用鼠标和键盘的情况下控制应用程序,实现自动化任务。在...
Python 3.8.6是Python编程语言的一个稳定版本,专为Windows操作系统设计。这个安装包包含所有必要的组件,使得用户能在Windows系统上顺利安装和使用Python 3.8.6。下面将详细介绍Python 3.8.6在Windows上的安装步骤...
python环境
Python 3.10.12 是 Python 编程语言的一个稳定版本,专为 Windows 操作系统设计。这个自编译版本是由个人或社区成员独立编译的,不同于官方发布的预编译二进制版本。它可能包含了特定的配置选项或者优化,但请注意,...