我剛剛開始使用PyGame。在這裏,我試圖繪製一個矩形,但它不是渲染。不能在Python pygame中繪製矩形
這是整個程序。
import pygame
from pygame.locals import *
import sys
import random
pygame.init()
pygame.display.set_caption("Rafi's Game")
clock = pygame.time.Clock()
screen = pygame.display.set_mode((700, 500))
class Entity():
def __init__(self, x, y):
self.x = x
self.y = y
class Hero(Entity):
def __init__(self):
Entity.__init__
self.x = 0
self.y = 0
def draw(self):
pygame.draw.rect(screen, (255, 0, 0), ((self.x, self.y), (50, 50)), 1)
hero = Hero()
#--------------Main Loop-----------------
while True:
hero.draw()
keysPressed = pygame.key.get_pressed()
if keysPressed[K_a]:
hero.x = hero.x - 3
if keysPressed[K_d]:
hero.x = hero.x + 3
if keysPressed[K_w]:
hero.y = hero.y - 3
if keysPressed[K_s]:
hero.y = hero.y + 3
screen.fill((0, 255, 0))
#Event Procesing
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
#Event Processing End
pygame.display.flip()
clock.tick(20)
self.x
和self.y
目前0和0 請注意,這不是一個完整的節目,都應該做的是畫上一個綠色的背景下,可以通過WASD鍵得以控制一個紅色正方形。
如果在最後包含'width'參數,它會呈現嗎?例如。 'width = 1' – 2013-04-30 01:54:44
不,它不會。我, – rafitufi 2013-04-30 02:07:01
嘿,也不適合我。 :)原來'rect'不接受關鍵字參數,所以可選的最後一個參數必須沒有關鍵字。但無論如何,這不是你的問題。 – 2013-04-30 02:29:05