有人知道如何使用Ruby或Python在屏幕上显示内容(覆盖任何窗口)吗?

有人知道如何使用Ruby或Python在屏幕上显示内容(覆盖任何窗口)吗?,python,ruby,user-interface,Python,Ruby,User Interface,使用Ruby或Python,是否有人知道如何在屏幕上画画,以覆盖任何其他窗口?有点像,按下一个键,程序将在屏幕上显示当前天气或股票报价(使用整个屏幕作为画布),然后再次按下该键,一切恢复到以前的状态?(就像Mac OS X的仪表板一样)。您可以使用系统仪表板(桌面小部件,或任何其名称)API。为了做到这一点,您需要为Python或Ruby绑定到它。 或者,您可以使用一些通用的gui工具包或应用程序框架,创建一个背景透明的无框架窗口。然后,您需要确保所选工具包在所需平台上支持“始终在顶部”选项。您

使用Ruby或Python,是否有人知道如何在屏幕上画画,以覆盖任何其他窗口?有点像,按下一个键,程序将在屏幕上显示当前天气或股票报价(使用整个屏幕作为画布),然后再次按下该键,一切恢复到以前的状态?(就像Mac OS X的仪表板一样)。

您可以使用系统仪表板(桌面小部件,或任何其名称)API。为了做到这一点,您需要为Python或Ruby绑定到它。
或者,您可以使用一些通用的gui工具包或应用程序框架,创建一个背景透明的无框架窗口。然后,您需要确保所选工具包在所需平台上支持“始终在顶部”选项。

您可以使用systems dashboard(桌面小部件,或任何其名称)API。为了做到这一点,您需要为Python或Ruby绑定到它。
或者,您可以使用一些通用的gui工具包或应用程序框架,创建一个背景透明的无框架窗口。然后,您需要确保所选工具包在所需平台上支持“始终在顶部”选项。

如果您在windows上,则可以使用win32api直接绘制到桌面dc(设备上下文) e、 g.只是为了好玩,试试这个:)

但这并不是很有用,因为它是不可擦除的

最好的选择是使用透明窗口或带有剪切区域的窗口(至少在可能的窗口上)
或者,即使您无法在某些系统上绘制透明,您也可以抓取当前屏幕并将其显示为窗口的背景,从而提供透明效果

如果您在windows上,则可以使用win32api直接绘制到桌面dc(设备上下文) e、 g.只是为了好玩,试试这个:)

但这并不是很有用,因为它是不可擦除的

最好的选择是使用透明窗口或带有剪切区域的窗口(至少在可能的窗口上)
或者,即使您无法在某些系统上绘制透明图形,您也可以抓取当前屏幕并将其显示为窗口的背景,以提供透明效果。

我推荐PyGame。

我推荐PyGame。

哪种操作系统?Mac OS X或其他什么?哪个操作系统?Mac OS X或其他?“你可以抓取当前屏幕”-然后你如何知道,比如说,它下面的其他窗口是否移动,这在逻辑上是在我们的窗口下面,因此系统不会要求重新绘制?”“你可以抓取当前屏幕”-然后你如何知道它下面的其他窗口是否移动,这在逻辑上是在我们的窗口下面,所以系统不会要求重新喷漆?
>>> import win32ui
>>> import win32gui
>>> hdc = win32ui.CreateDCFromHandle( win32gui.GetDC( 0 ) )
>>> hdc.DrawText("Wow it works", (100, 100, 200, 200))
>>> hdc.LineTo(500,500)