2009-11-14 60 views
1

我知道这是一个很长的镜头,但我想知道如果Python有办法操纵屏幕缓冲区。具体来说,我希望能够在按下组合键时将我的桌面变灰并突出显示我的窗口。这是否有可能?在Python中操作屏幕缓冲区

+2

在你想要做什么操作系统? – sanmai 2009-11-14 15:56:44

+2

你不能通过访问“屏幕缓冲区”来实现这一点,你必须使用API​​,PyQt(对于所有平台更通用),带有IronPython(Windows)的.NET提供。 。直接访问屏幕缓冲区是一个很久以前就消失的概念;-) – RedGlyph 2009-11-14 16:16:09

+0

我期待在Windows,OSX或Linux上部署应用程序。我认为它不是必需的,但它是我最熟悉的。 – directedition 2009-11-14 22:04:00

回答

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框架,通过搜索,你会发现与该主题上的其他问题,与其他建议:

2

而不是“灰色”的桌面,尝试覆盖整个屏幕上的灰色,半透明的图像,然后确保你的窗口是最重要的。您可能会遇到一些小问题;例如,如果可以覆盖mac菜单栏(我不确定你想要),我不知道该如何处理。

相关问题