채워진 사각형을 그릴 수 없습니다. [중복]

Nov 15 2020

중앙에 상자가 채워진 화면을 그리려고합니다. pygame.Surface.fill()상자에 사용 하고 있지만이 오류가 발생합니다. TypeError : 'pygame.Surface'개체에 대한 설명자 'fill'이 'tuple'개체에 적용되지 않습니다 . 내 코드는 다음과 같습니다.

my_color = (0, 0, 0)

my_rect = (100, 100, 200, 150)

box = pygame.Surface.fill(my_color, my_rect)

surf.blit(box)

답변

1 Kingsley Nov 15 2020 at 08:20

두 단계 만 거치면됩니다. 먼저 표면을 만든 다음 채우십시오. 표면을 만들면 별도의 이미지가 만들어 지므로 직사각형이 아닌 크기가 필요합니다.

my_color = (0, 0, 0)

my_rect = (100, 100, 200, 150)

my_size = ( 200, 150 )

box = pygame.Surface( my_size )
box.fill( my_colour )

surf.blit( box, my_rect )

직사각형 만 그리려면 기본 표면을 직접 사용하는 그리기 함수 를 사용할 수 있습니다.

pygame.draw.rect( surf, my_color, my_rect )