【发布时间】:2020-02-13 17:07:31
【问题描述】:
我想在屏幕上画一个圆圈,但它应该是可以点击的,我应该可以点击这个圆圈后面的东西。到目前为止,我实现了画圆并使其透明,但我无法让它点击。我知道使用 pywin32 win32con.WS_EX_LAYERED 标志是可能的,但 PySimpleGUI 文档中没有关于此的信息。我该如何解决这个问题?
我当前的窗口配置:
window = sg.Window('Sample window', layout,
keep_on_top=True,
auto_size_buttons=False,
grab_anywhere=False,
no_titlebar=True,
return_keyboard_events=False,
alpha_channel=0.8,
use_default_focus=False,
transparent_color='red',
finalize=True)
如果用PySimpleGUI不行的话,可以用pywin32模块组合吗?
【问题讨论】:
-
我假设您的意思是 PySimpleGUI 的 tkinter 版本。如果是这样,我可以使用 Graph 绘制一个红色圆圈,然后能够单击窗口中的孔并在其下的下一个窗口中选择文本。
-
@MikeyB 是的,我这样做了,但它自己的圈子不是点击,对吗? :)
-
窗口的透明部分被点击。我不知道还能用什么词来形容它。窗户上的洞,不管它是怎么形成的,我都能与我通过开口看到的任何东西进行互动。如果你运行 PySimpleGUI 测试工具 (PySimpleGUI.main()),有一个按钮可以让窗口透明,让你可以测试这样的东西。您应该能够运行它,单击按钮使其透明,然后与通过窗口可见的任何内容进行交互。
标签: python-3.x transparent win32gui pysimplegui click-through