【问题标题】:Pygame Won't Initialize Game Window on M1 MacBook Air [duplicate]Pygame不会在M1 MacBook Air上初始化游戏窗口[重复]
【发布时间】:2021-03-25 04:28:11
【问题描述】:

我今天刚买了一台 M1 MacBook Air 来编写一个 pygame 项目,但一开始我遇到了 pygame 视频系统的问题。它不会初始化 pygame 窗口。以下代码 sn-p 在 PC 中工作,但 M1 Mac 不会初始化它。我收到的错误消息是“pygame 错误:视频系统未初始化”

我不确定这个问题是只针对 M1 Mac 还是针对所有 Mac 用户。有谁知道这个错误的答案和解决方法吗?

非常感谢!

    import pygame
    pygame.init() 
    screen = pygame.display.set_mode((800, 600))
    run = True
    while run:
       for event in pygame.event.get():
          if event.type == pygame.quit():
             run = False

【问题讨论】:

  • 看看this是否能解决你的问题。

标签: python pygame


【解决方案1】:

我最初认为这是一个 M1 mac 问题,因为 pygame 对 M1 mac 还没有很好的支持。

但是我看到了问题:

if event.type == pygame.quit():

应该是

if event.type == pygame.QUIT

现在您正在运行函数pygame.quit(),它会取消初始化您的视频系统。

【讨论】:

  • 谢谢 Starbuck5。我更改了代码。我在 Sublime Text 3 中运行此代码,它无法带来 pygame 窗口。但是,当我在 python IDLE 中运行它时,它确实弹出了窗口,但是当单击退出时,pygame 窗口停止响应。我认为这个问题目前仅限于 M1 Mac。
  • @BingZL 对我来说仍然听起来像是代码中的错误。使用 IDLE 运行 pygame 程序时,窗口不会关闭,直到调用 pygame.quit()。听起来你的程序马上就要结束了。
  • 我添加了 pygame.quit() 。还有一个问题。当我关闭它时,窗口关闭了,但程序(python 启动器仍然打开)我必须强制退出它。然后我添加了 quit() 。在我关闭窗口的那一刻,我得到一个弹出窗口,说程序仍在运行,然后我点击 OK 按钮,然后程序关闭。在PC上运行同样的代码没有问题。
猜你喜欢
  • 1970-01-01
  • 2023-02-18
  • 1970-01-01
  • 1970-01-01
  • 2017-11-15
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多