Bild wird nicht geladen

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
blob
User
Beiträge: 19
Registriert: Mittwoch 14. April 2010, 20:09

Ich habe ein Problem mit Pygame.
Wenn nicht diesen Code ausführe:

Code: Alles auswählen

sprite_image = "ball.png"

import pygame
from pygame.locals import*
from sys import exit

pygame.init()


screen = pygame.display.set_mode((800,600),0,32)

sprite = pygame.image.load(sprite_image)

while True:

    for event in pygame.event.get():
        if event.type == QUIT:
            exit()

    

    x,y = 100,100

    pressed_keys = pygame.key.get_pressed()

    if pressed_keys["K_UP"]:
        x += 1
    if pressed_keys["K_DOWN"]:
        x -= 1
    
    screen.blit(sprite,(x,y))

    pygame.display.update()

erhalte ich diese Fehlermeldung :

Traceback (most recent call last):
File "C:/Python26/Programme/key_test.py", line 17, in <module>
sprite = pygame.image.load(sprite_image)
error: Couldn't open ball.png


Anscheinend kann Pygame das Bild nicht öffnen, wisst ihr woran das liegen könnte?

Übrigens, ich habe die Version Python 2.6 pygame-1.9.2pre installiert.
BlackJack

@blob: Entweder gibt es das Bild nicht im aktuellen Arbeitsverzeichnis, oder Du hast nicht die nötigen Rechte darauf zuzugreifen, oder die Bilddatei ist defekt.
majinv
User
Beiträge: 42
Registriert: Mittwoch 14. April 2010, 13:21

ich würde spontan sagen, deklaration über den imports funktionieren nicht?

//EDIT funktioniert doch... dann würd ich darauf tippen, dass das bild nicht im selben ordner liegt?
blob
User
Beiträge: 19
Registriert: Mittwoch 14. April 2010, 20:09

Das Bild liegt im selben Ordner, daran liegt es nicht...
Ich benutze Windows7 und habe oft Probleme mit den Administratorrechten, vlt liegt es ja daran.
Wisst ihr eine Lösung?

EDIT:

Lag doch nicht an Windows7, das Bild war defekt -.-

Aber ein Problem habe ich noch, wenn ich das Fenster versuche zu schließen reagiert es nicht und mein Pc hängt sich auf.
MGS_Freak
User
Beiträge: 35
Registriert: Donnerstag 13. Januar 2011, 13:50
Wohnort: Schweiz

auch wenn der Post schon alt ist: das Problem hatte ich am Anfang auch. Du prüfst ja schon ob ein QUIT-event stattfindet, pygame beendest Du da allerdings noch nicht, ein einfaches quit (da

Code: Alles auswählen

from pygame.locals import *
, ansonsten pygame.quit()) reicht schon völlig aus (einfach ober- oder unterhalb Deinem exit() einfügen.

Grüsse
MGS_Freak
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Und auch hier die Warnung, dass man *-Importe vermeiden sollte.

@MGS_Freak: Ja, der Thread ist fast 2 Jahre alt. Denke nicht dass den OP das noch interessiert...
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
MGS_Freak
User
Beiträge: 35
Registriert: Donnerstag 13. Januar 2011, 13:50
Wohnort: Schweiz

Leonidas hat geschrieben:Und auch hier die Warnung, dass man *-Importe vermeiden sollte.
hatte ich vergessen zu schreiben, danke.
@MGS_Freak: Ja, der Thread ist fast 2 Jahre alt. Denke nicht dass den OP das noch interessiert...
Wohl wahr, musste es einfach loswerden ;)
Antworten