首页 > 解决方案 > tkinter:撤销点击

问题描述

当您想要创建一个窗口及其元素可点击时,您可能会使用这样的代码:

label = Label(root)

hwnd = label.winfo_id()
styles = win32gui.GetWindowLong(hwnd, win32con.GWL_EXSTYLE)
styles = win32con.WS_EX_LAYERED | win32con.WS_EX_TRANSPARENT
win32gui.SetWindowLong(hwnd, win32con.GWL_EXSTYLE, styles)
win32gui.SetLayeredWindowAttributes(hwnd, 0, 255, win32con.LWA_ALPHA)

注意:您需要使用元素的句柄(这里:标签)而不是窗口的句柄(这里:root),假设 Window 的背景已经透明:

root.config(bg='#000000') 
root.attributes('-transparentcolor', '#000000')

现在的问题:我如何撤销点击?我假设它是这样的:

def revoke_click_through(hwnd):
    ... #maybe work with new styles?
    win32gui.SetWindowLong(hwnd, ... )
    win32gui.SetLayeredWindowAttributes(hwnd, ... )

标签: python-3.xtkinter

解决方案


推荐阅读