2016-05-29 3 views
0
import pygame 
from sys import exit 
pygame.init() 
screen = pygame.display.set_mode((600,170),0,32) 
pygame.display.set_caption("Hello World!") //set caption 
background = pygame.image.load('bg.jpeg').convert //load picture and convert it 
while True: 
    for event in pygame.event.get(): 
     if event.type == pygame.QUIT: 
      pygame.quit() 
      exit() 
    screen.blit(background,(0,0)) 
    pygame.display.update() //refresh 

Я получаю ошибку:Pygame не может протекать успешно

File "/Users/huangweijun/PycharmProjects/untitled1/first.py", line 12, in<module>  

    screen.blit(background,(0,0)) 

    TypeError: argument 1 must be pygame.Surface, not builtin_function_or_method 

я есть скачать Pygame

я не знаю, как решить эту проблему.

+0

вы можете попробовать только 'фон = pygame.image.load ("bg.jpeg")' вместо 'фона = pygame.image.load ('bg.jpeg'). Convert' –

+0

Благодарю вас. Проблема решена –

+0

, так что это в основном означает, что вам не нужно преобразовывать изображение. –

ответ

0

Первый аргумент функции screen.blit является pygame Surface. Подумайте об этом как о экране. Вы указываете объект класса Image. Это не сработает, потому что вы не можете рисовать изображение.

Заменить background с screen и добавить background в качестве аргумента между screen и (0,0). You код должен выглядеть следующим образом:

import pygame 
from sys import exit 
pygame.init() 
screen = pygame.display.set_mode((600,170),0,32) 
pygame.display.set_caption("Hello World!") //set caption 
background = pygame.image.load('bg.jpeg').convert //load picture and convert it 
while True: 
    for event in pygame.event.get(): 
     if event.type == pygame.QUIT: 
      pygame.quit() 
      exit() 
    screen.blit(screen,background,(0,0)) 
    pygame.display.update() //refresh 
0

ананас, кажется вопрос здесь в этой строке:

background = pygame.image.load('bg.jpeg').convert

Я думаю, что вы хотели бы использовать был: background = pygame.image.load('bg.jpeg').convert_alpha()

Надеюсь, это то, что вы искали!

EDIT: Вы могли бы также добавить скобки после convert() К сожалению! Попробуйте их обоих и посмотрите, что произойдет!

-Travis

Смежные вопросы