我知道这是一个很长的镜头,但我想知道Python是否有办法操纵屏幕缓冲区。具体来说,当我按下一个组合键时,我希望能够使我的桌面灰显并突出显示我的窗口。这是可能的吗?
答案 0 :(得分:2)
根据您的问题和随后的评论,PyQt将是一个不错的选择,您将拥有三个平台的通用代码。
您必须将其开发为GUI,但使用库函数,这也意味着您必须重新思考您在GUI可能性方面的确切需求,并且以一种尊重常规GUI约定的方式:用户可能不会不希望你的应用程序修改他们喜欢的桌面背景或表现得很奇怪。
例如,有一种方法可以bring your application to the foreground(答案中给出的例子都是用C ++编写的,但Python中提供了等效的方法,代码非常相似)。
Qt最初是一个C ++框架,最近被诺基亚收购,如果你也熟悉那种语言,你应该在决定选择之前考虑一下,但无论如何PyQt不会让你失望,它非常成熟稳定。
关于许可证,如果是您的担忧之一,PyQt是GPL,也可以获得商业许可证。另一个Python Qt移植正在使用LGPL许可证,由诺基亚在PyQt作者拒绝更改其许可证后推动:PySide,但它仍处于早期开发阶段。
最后,我不得不提到Qt不是Python的唯一GUI框架,通过搜索,您可以在SO上找到与该主题相关的其他问题,以及其他建议:
答案 1 :(得分:2)
尝试在整个屏幕上覆盖灰色,半透明的图像,然后确保您的窗口位于其上方,而不是“灰化”桌面。您可能面临一些小的限制;例如,如果可以覆盖mac菜单栏(我不确定你想要),我不知道我的头脑。