我是Pygame的新手,我只希望填充屏幕的某些部分,例如一半。目前,我只能填写整个屏幕。有人可以帮忙吗?
import pygame
color= (255, 0, 0)
screen = pygame.display.set_mode((740, 780))
screen.fill(color)
答案 0 :(得分:2)
.fill()
的第二个参数是一个矩形,用于定义要填充的区域。
pygame.Surface
对象的宽度和高度可以分别由.get_width()
.get_height()
获得:
例如
screen.fill(color, (0, 0, screen.get_width()// 2, screen.get_height()))
答案 1 :(得分:1)
import pygame
size = w,h = 300, 400
scr = pygame.display.set_mode((w,h))
pygame.display.set_caption("Hello")
scr.fill((0,255,0), rect=(0,0,w,h/2))
pygame.display.flip()
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
running = False
答案 2 :(得分:1)
一种部分填充的方法可能包括在屏幕的一半上“绘制”一个形状(即矩形)。
import sys
import pygame
def half_screen():
#Initialize game and create screen object.
pygame.init()
color= (255, 0, 0)
screen = pygame.display.set_mode((200, 400))
#Draw rectangle to fill the left half of the screen.
left_half = pygame.draw.rect(screen, color,(0,0, 100, 400))
#Start loop for game- keeps screen open until you decide to quit.
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
#Make the current screen visible.
pygame.display.flip()
half_screen()
来找到有关绘制模块pygame.draw的更多信息。