在Python中操作屏幕缓冲区
我知道这个问题可能有点难,但我想问问Python有没有办法来操作屏幕缓冲区。具体来说,我想在按下某个组合键时,让我的桌面变成灰色,同时高亮显示我的窗口。这种事情有可能做到吗?
2 个回答
2
与其让桌面变成灰色,不如在整个屏幕上覆盖一层灰色的半透明图片,然后确保你的窗口在最上面。你可能会遇到一些小问题,比如我不太确定能不能把这个灰色层放在Mac的菜单栏上(而且我也不确定你是否真的想这么做)。
2
根据你的问题和后面的评论,PyQt 是个不错的选择,这样你可以用相同的代码在三个平台上运行。
不过,你得把它开发成一个图形用户界面(GUI),也就是要用到库里的功能。这意味着你需要重新考虑一下你想要的图形界面是什么样的,并且要遵循一些常见的图形界面规则:用户可能不希望你的应用程序去改变他们喜欢的桌面背景或者表现得很奇怪。
比如,有一种方法可以把你的应用程序放到最前面(虽然回答中的例子是用C++写的,但在Python中也有类似的方法,代码会非常相似)。
Qt 最初是一个C++框架,最近被诺基亚收购。如果你对C++也有了解,建议你在决定选择哪个之前好好考虑一下。不过无论如何,PyQt不会让你失望,它相当成熟和稳定。
关于许可证,如果这是你关心的问题,PyQt是GPL许可证,也有商业许可证可供选择。还有一个Python的Qt移植项目正在开发中,使用的是LGPL许可证,这是诺基亚推动的,因为PyQt的作者拒绝更改他们的许可证:PySide,但它仍在早期开发阶段。
最后,我得提一下,Qt并不是Python唯一的图形用户界面框架,你可以搜索一下,会在Stack Overflow上找到其他相关问题和建议: