防止鼠标点击聚焦 pygame/SDL 窗口

时间:2021-06-17 22:18:57

标签: python pygame

所以我想制作一个由 py​​game 提供支持的叠加层。我设法通过下面的代码获得了一个透明窗口。我现在唯一的问题是,当您单击或悬停在图像上时,焦点会切换到 pygame 窗口,从而使某些 fps 游戏无法播放。有没有办法让窗口“忽略”事件?

代码(片段):

def get_pygame_window():
    return pygame.display.get_wm_info()["window"]


screen = pygame.display.set_mode(self.size, pygame.NOFRAME) # make the window borderless

# make window always top (only works for fake-fullscreen or windowed)
win32gui.SetWindowPos(get_pygame_window(), win32con.HWND_TOPMOST, 0, 0, 0, 0, win32con.SWP_NOSIZE | win32con.SWP_NOMOVE)

hwnd = get_pygame_window()
win32gui.SetWindowLong(hwnd, win32con.GWL_EXSTYLE, win32gui.GetWindowLong(hwnd,win32con.GWL_EXSTYLE) | win32con.WS_EX_LAYERED)

# Set window transparency color (windows keys this out so it becomes transparent)
win32gui.SetLayeredWindowAttributes(hwnd, win32api.RGB(*get_clear_color()), 0, win32con.LWA_COLORKEY)



0 个答案:

没有答案
相关问题