You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pygame窗口反复闪烁求助:仅调用display.update仍闪黑白

Pygame窗口黑白闪烁问题修复

问题根源

你把pygame.display.set_mode()放在了主循环内部,每次循环都会重新创建一个新的窗口实例。窗口初始化时默认是黑色,紧接着你填充白色并更新显示,这就导致窗口在“新建黑色窗口→填充白色→更新显示”的循环里反复切换,最终出现黑白闪烁的现象。

修正后的代码

import pygame

running = True
pygame.init()

White = (255, 255, 255)
# 将窗口创建移到循环外,只初始化一次
screen = pygame.display.set_mode((1400, 800))

while running == True:
    screen.fill(White)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
    pygame.display.update()

补充说明

  • 换成pygame.display.flip()没用,是因为闪烁的核心原因是重复创建窗口,和刷新方法无关;
  • 把pygame.display.update()移到循环外时,循环里一直在重复创建黑色窗口,最后只更新一次显示,所以看到的是最后创建的黑色窗口。

内容的提问来源于stack exchange,提问作者Dragonsy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 23:45:34