Python 如何修复此错误:';pygame.Surface';对象不可下标
第34行是出现错误的地方,我是pygame的新手,所以我不知道到底发生了什么。该代码是用来执行一个功能,一旦我点击一个图像。我也不知道这是否有效,因为这个错误阻止我知道Python 如何修复此错误:';pygame.Surface';对象不可下标,python,pygame,Python,Pygame,第34行是出现错误的地方,我是pygame的新手,所以我不知道到底发生了什么。该代码是用来执行一个功能,一旦我点击一个图像。我也不知道这是否有效,因为这个错误阻止我知道 import pygame black = (0, 0, 0) white = (255, 255, 255) green = (0, 255, 0) red = (255, 0, 0) pygame.init() size = (500, 400) screen = pygame.display.set_mode(siz
import pygame
black = (0, 0, 0)
white = (255, 255, 255)
green = (0, 255, 0)
red = (255, 0, 0)
pygame.init()
size = (500, 400)
screen = pygame.display.set_mode(size)
pygame.draw.rect(screen, red,(150,450,100,50))
button1 = pygame.Rect(100,100,50,50)
button2 = pygame.Rect(200,200,50,50)
button3 = pygame.Rect(130,250,50,50)
pygame.display.set_caption("Yami no Game")
txt = pygame.image.load('txt.png')
Stxt = pygame.transform.scale(txt,(48,48))
exe = pygame.image.load('exe.jpg')
Sexe = pygame.transform.scale(exe,(48,48))
done = False
clock = pygame.time.Clock()
background_image=pygame.image.load('windows_background.jpg').convert()
while not done:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
mouse = pygame.mouse.get_pos() # position
click = pygame.mouse.get_pressed() # left/right click
if Sexe[100] + Sexe[48] > mouse[0] > Sexe[100] and Sexe[100] + Sexe(48) > mouse[1] > Sexe[100]: # Mouse coordinates checking.
if click[0] == 1: # Left click
import The_Start #ignore this
screen.blit(background_image, [0,0])
screen.blit(Stxt,[100,100])
screen.blit(Sexe,[250,250])
pygame.display.update()
clock.tick(60)
pygame.quit()
似乎您想要评估鼠标是否位于矩形区域中,该区域由对象
Sexe
覆盖。
我建议通过表单Sexe
获取对象。
用于检查鼠标是否位于矩形区域中。
注意,曲面没有位置,当它是blit
时,它会得到一个位置。因此,矩形的位置必须由关键字参数设置(Sexe.get_rect(topleft=(250250))
):
未完成时:
# [...]
sexe_rect=sexe.get_rect(左上方=(250250))#sexe在blit中的位置(sexe,[250250])
mouse\u pos=pygame.mouse.get\u pos()
如果六方碰撞点(鼠标位置):
click=pygame.mouse.get_pressed()
如果单击[0]==1:
打印(“点击Sexe”)
# [...]
screen.blit(Sexe,[250250])
# [...]