首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对无关窗口的奇怪sdl副作用

对无关窗口的奇怪sdl副作用
EN

Stack Overflow用户
提问于 2019-05-09 06:02:18
回答 1查看 369关注 0票数 15

在通过sdl2通过pysdl2播放时,我注意到了这种奇怪的副作用,一旦sdl脚本运行不相关的窗口,通常在移动时会变得半透明,现在保持不透明。

如果不是因为唠叨的感觉,这表明我做了根本错误的事情,我就不会那么介意了。

,有人能告诉我这到底是怎么回事吗?

这是我的剧本:

代码语言:javascript
复制
import sdl2
import sdl2.ext as se
import time

def main():
    k = 2
    event_buffer = (k * sdl2.SDL_Event)()
    se.init()
    window = se.Window("what the ?", size=(400, 300))
    window.show()
    while True:
        window.refresh()
        time.sleep(0.01)
        sdl2.SDL_PumpEvents()
        sdl2.SDL_PeepEvents(event_buffer, k, sdl2.SDL_GETEVENT,
                            sdl2.SDL_FIRSTEVENT, sdl2.SDL_LASTEVENT)
        for event in event_buffer:
            if not event.type:
                continue
            elif event.type == sdl2.SDL_QUIT:
                se.quit()
                break
            else:
                pass
            event.type = 0
        else:
            continue
        break

if __name__ == '__main__':
    main()

这里有一个前后屏幕抓取:

我的KDE 5.45.0桌面的系统设置窗口没有运行sdl脚本,显示了相关的设置桌面Effects>Translucency。注意窗口是如何半透明的,因为我在拍照时拖动它。

与此相同,但在运行sdl脚本时。请注意,尽管我用力地拖动窗口,但它仍然顽固地不透明。

EN

回答 1

Stack Overflow用户

发布于 2019-06-24 02:13:20

我也可以在我的Ubuntu桌面上使用Unity,所以它绝对不是你的KDE桌面的问题。我认为这是pysdl2中的一个bug,在修复之前,这个解决方案应该是一个临时的解决方案,但同时,您可以将其添加到while循环中:

代码语言:javascript
复制
window.get_surface()

这个问题已经在这里报道了:https://github.com/marcusva/py-sdl2/issues/139

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56053077

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档