我不知道我做错了什么,我遵循了一个指南,这可能是一个过时的软件问题或什么?

2024-04-20 00:06:13 发布

您现在位置:Python中文网/ 问答频道 /正文

请有人弄明白我为什么这么笨,这不是工作 我已尝试更改主回路,例如删除一些线路,idk 因为无聊,我随意打开窗户 我遇到的主要问题是窗口会立即打开然后关闭,我不知道为什么会发生这种情况,请帮助:)

import pygame
import random

random1 = (random.randint(1, 2000))
random2 = (random.randint(1,2000))
width, height = random1, random2
fps = 60
red = (255, 0, 0)

window = pygame.display.set_mode((width, height))
pygame.display.set_caption("i don't know what im doing")

man_character = pygame.image.load('mancharacter.jpg')


def draw_window():
    window.fill(red)
    window.blit('mancharacter.jpg')
    window.blit('potato.PNG')
    pygame.display.update()

def main():
    clock = pygame.time.Clock()
    pizza = True
    while pizza:
        clock.tick(fps)
        for event in pygame.event.get():
            if event.type == pygame.Quit():
                pizza = False
        draw_window()
    pygame.Quit()

Tags: importeventdisplayrandomredwindowwidthpygame
1条回答
网友
1楼 · 发布于 2024-04-20 00:06:13

看看这部分代码:

def main():
    #[...]
    for event in pygame.event.get():
        if event.type == pygame.Quit():
             pizza = False
        draw_window()
    pygame.Quit()

Pygame没有任何属性'Quit',因此它应该是这样的:

def main():
    #[...]
    while pizza:
        clock.tick(fps)
        for event in pygame.event.get():
            if event.type == pygame.QUIT: #Remove the parentheses and capitalise the word
                pizza = False
        draw_window()
    pygame.quit() #quit not Quit

这可能会奏效

import pygame
import random

random1 = (random.randint(1, 2000))
random2 = (random.randint(1,2000))
width, height = random1, random2
fps = 60
red = (255, 0, 0)

window = pygame.display.set_mode((width, height))
pygame.display.set_caption("i don't know what im doing")

man_character = pygame.image.load('mancharacter.jpg')


def draw_window():
    window.fill(red)
    window.blit('mancharacter.jpg')
    window.blit('potato.PNG')
    pygame.display.update()

def main():
    clock = pygame.time.Clock()
    pizza = True
    while pizza:
        clock.tick(fps)
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pizza = False
        draw_window()
    pygame.quit()

main() #You need to call this function

相关问题 更多 >