首先,我在pygame 1.9.4上使用macOS Mojave 10.14.1。
此外,我正在使用PyCharm IDE,并且正在使用python 3.7.1。
我认为尝试pygame会很有趣,但是即使绘制简单的矩形或图像也行不通。
这是我尝试用来绘制矩形,绘制与文件位于同一目录中的图像并用白色填充窗口的代码。都不起作用。
import pygame
pygame.init()
win = pygame.display.set_mode((600, 600))
pygame.display.set_caption("Snake")
image = pygame.image.load("java_logo.png")
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
win.fill((0, 255, 0))
pygame.draw.rect(win, (255, 0, 0), (50, 50, 50, 50))
win.blit(image, (200, 200))
pygame.display.flip()
pygame.quit()
编辑:
以下是使用的图像:https://i.imgur.com/OoSHkXX.png
答案 0 :(得分:6)
我昨天晚上遇到了同样的问题。当执行一个非常简单的pygame代码时,没有一个窗口正在加载,一个球在窗口中弹起。 与其他成员相关的解决方案是安装pygame的较新版本,以我为例,安装pygame lib v2.0的最新Beta版。
此处是要在安装了python3的OS X Mojave中安装的shell代码。
pip3 install pygame=2.0.0.dev6
答案 1 :(得分:3)
这是已知问题Pygame not compatible with MacOS Mojave #555
根据问题的评论,仅在pygame 1.9.5 中已修复
UPD: 它应该适用于python 3.6.5
答案 2 :(得分:1)
Pygame在OS X Mojave 10.14.3上的Python 3.7.3,pygame 1.9.5上仍然无法运行
因此pygame 1.9.5无法解决该问题。
在一个简单的测试程序(见下文)中,窗口打开,窗口标题起作用,但是什么也没画。
import pygame
import sys
pygame.init()
screen = pygame.display.set_mode((612,792))
pygame.display.set_caption("This works!")
red = (255,0,0)
screen.fill(red)
# point (0,0) is at upper left
pygame.draw.lines(screen,black,False,[(100,100),(150,200),(200,100)], 1)
pygame.display.update() #nothing is drawn
while (True):
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit(); sys.exit();
答案 3 :(得分:1)
使用python 3.8并且无法加载图像。
pip3 install pygame==2.0.0.dev10
答案 4 :(得分:0)
我认为您忘记了pygame.display.update()来更新屏幕。 另外,对于pygame.draw.rect(win,(255,0,0),(50,50,50,50)), 这表示您绘制了一个矩形,其左上角为(50,50)(前两个部分),每个宽度和长度均为50像素。 (最后两部分)。
答案 5 :(得分:0)
对我来说,在使用pip3安装pygame版本1.9.6之后,我必须安装Python页面的Python版本3.6.0
对我有用的
答案 6 :(得分:0)
对我来说,我必须安装
python 3.6 和 pygame 1.9.6
在macOS Mojave 10.14.6 上,我不得不添加pygame.display.update()