Mac系统运行Pygame程序出现黑屏或破碎绿线问题求助
问题根因
- 代码中仅定义了负责填充背景、绘制网格的
draw_grid()函数,但是主循环中没有执行该函数的调用,所有绘图逻辑从未运行,因此窗口会保持初始化时的黑屏状态。你看到的破碎绿色线条是窗口未被正确重绘时的显存残留内容,填充背景后即可清除。
修复方法
在主循环的pygame.display.update()语句前新增draw_grid()函数调用即可,调整后的完整主循环代码如下:
run = True while run: # 事件处理 for event in pygame.event.get(): if event.type == pygame.QUIT: run = False # 执行绘制逻辑 draw_grid() # 刷新窗口显示 pygame.display.update() pygame.quit()
注意事项
- 所有pygame的绘图操作(包括填充背景、绘制图形、渲染文字等)都需要放在
pygame.display.update()或pygame.display.flip()之前执行,修改的画面内容才会被刷新到窗口上。
内容的提问来源于stack exchange,提问作者jbm2021
相关产品推荐
相关产品推荐

