到目前为止,这是我想要的,我正在尝试访问png文件以显示为品格,但是到目前为止,我尝试过的所有操作都产生了错误。 png文件与我正在运行的.py文件位于同一CWD中,所以这不应该成为问题。如果有帮助,我就在Windows上
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