2015-06-12 35 views
1

我一直在为pygame中的游戏项目开发一个简单的地图编辑器工具。现在我试图让程序在启动时加载特定文件夹中的所有图像。对于每个图像,我在列表中创建一个文件,并将其制作为自定义类对象。当我将它作为类对象添加时,它会分配一个.fileImage值。无法在pygame中使用变量名加载图像

错误:
Couldn't open E:\Pygame Engine Test\Assets\\Blocks\coldstoneWideBrick.png

我只是不,因为我已经试过现在调试了一段时间的问题,它是没有意义的理解这个错误。

当我在图像加载我这样做:

class editorBlocks: 
    def __init__(self, Image, Name, Type): 
     self.editName = Name 
     self.fileImage = pygame.image.load(blockDir + Image).convert() 
     self.obType = Type 

如果我有计划进入“coldstoneWideBrick.png”作为班里的形象价值,它返回上述错误。我试过打印图片当我输入它并得到它“coldstoneWideBrick.png”。不过,如果我更换与此加载图像的行:

self.fileImage = pygame.image.load(blockDir + "coldstoneWideBrick.png").convert() 

它加载图像而不会出现错误。为什么当我使用输入时,即使输入具有相同的值,它也会遇到困难?

+0

我没有看到这个代码中的问题,你的调试步骤看起来完全符合我的要求。我能够运行它(只需稍作更改)。我建议你看看你如何为Image分配一个值(当你调用editorBlocks的时候),如果你没有看到问题,也可以发布这些代码。 – Mike3d0g

回答

0

经过对问题的进一步审查后,我注意到,当我打印的价值有一个空行每次后。 我可以通过改变我在图像值中加载的方式来修复它(它在加入类之前从文件加载)。对不起,犯了这样一个简单的错误,并感谢您的时间!