App*_*ker 4 python text pygame
我需要为我的角色扮演游戏创建一个文本框/消息框/状态框等。我已经创建了一个文本框类,但它似乎不起作用。它会传输表面但不显示任何文本。
代码:
class TextBox(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.initFont()
self.initImage()
self.initGroup()
self.setText(['a','b'])
def initFont(self):
pygame.font.init()
self.font = pygame.font.Font(None,3)
def initImage(self):
self.image = pygame.Surface((200,80))
self.image.fill((255,255,255))
self.rect = self.image.get_rect()
self.rect.center = (0,0)
def setText(self,text):
tmp = pygame.display.get_surface()
x_pos = self.rect.left+5
y_pos = self.rect.top+5
for t in text:
x = self.font.render(t,False,(0,0,0))
tmp.blit(x,(x_pos,y_pos))
x_pos += 10
if (x_pos > self.image.get_width()-5):
x_pos = self.rect.left+5
y_pos += 10
def initGroup(self):
self.group = pygame.sprite.GroupSingle()
self.group.add(self)
Run Code Online (Sandbox Code Playgroud)
嗯,抱歉。没关系。我自己发现了问题。我写 :
self.rect.center = (0,0)
Run Code Online (Sandbox Code Playgroud)
它应该在哪里
self.rect.top = 0 ; self.rect.left = 0
Run Code Online (Sandbox Code Playgroud)
不管怎么说,还是要谢谢你。:D
| 归档时间: |
|
| 查看次数: |
6807 次 |
| 最近记录: |