无法使用pygam打开PNG文件

2024-10-04 11:24:58 发布

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

这就是我到目前为止所做的,我试图访问一个png文件来显示为fret,但是我到目前为止所做的一切都导致了一个错误。png文件与我运行的.py文件在同一个CWD中,所以这不应该是问题所在。如果这有帮助的话,我就在窗户上

import sys
import os
import pygame
from pygame.locals import *
import random
import notes
import frets
import score

class Controller:
    def __init__(self):
         pygame.init()
         pygame.font.init()
         self.width = 500
         self.height = 300
         self.screen = pygame.display.set_mode((self.width, self.height))
         self.background = pygame.Surface(self.screen.get_size()).convert()
         self.frets = pygame.sprite.Group()
         self.frets.add(frets.Frets(100, 100, "openGreenFret.png"))

         self.state = "GAME"

    def mainLoop(self):
        while True:
            if(self.state == "GAME"):
                self.gameLoop()
            elif(self.state == "GAMEOVER"):
                self.gameOver()

这是控制器中正在使用的类

    import pygame
    class Frets(pygame.sprite.Sprite):
        def __init__(self, x, y, img_file):
            pygame.sprite.Sprite.__init__(self)

            self.image = pygame.image.load(img_file).convert_alpha()

            self.rect = self.image.get_rect()
            self.rect.x = x
            self.rect.y = y

这是我进终点站的错误

Traceback (most recent call last):
  File "C:\Users\Matt Foster\Documents\guitarHeroMain.py", line 6, in <module>
    main()
  File "C:\Users\Matt Foster\Documents\guitarHeroMain.py", line 4, in main
    main_window = Controller.Controller()
  File "C:\Users\Matt Foster\Documents\Controller.py", line 19, in __init__
    self.frets.add(os.path.join(frets.Frets(100, 100, "openGreenFret.png")))
  File "C:\Users\Matt Foster\Documents\frets.py", line 6, in __init__
    self.image = pygame.image.load(img_file).convert_alpha()
pygame.error: Couldn't open openGreenFret.png

Tags: pyrectimageimportselfpnginitmatt