(这个问题措辞不太好,所以如果你认为你能把它改写得更好,那就请改一下。) 我基本上有十个窗格,几乎是相同的PyGame屏幕上显示。然而,代码是愚蠢的长,所以我想知道是否有一个更好的方法来做我所做的事情。你知道吗
def addPane(self, textToDisplay):
#right now it is displaying them all change so that it checks how many
#panes are on through (numberOfPanes = 0) 10 is limit display no more
#than ten.
paneOne = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneTwo = pygame.draw.rect(self.screen, (black), (0, 0, 200, 100), 2)
paneThree = pygame.draw.rect(self.screen, (black), (600, 400, 200, 100), 2)
paneFour = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneFive = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneSix = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneSeven = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneEight = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneNine = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
paneTen = pygame.draw.rect(self.screen, (black), (175, 75, 200, 100), 2)
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneOne
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneTwo
self.screen.blit(self.font.render(textToDisplay, True, (black)), (250, 115))
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneThree
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneThree
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneFour
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneFive
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneSix
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneSeven
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneEight
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneNine
self.NoOfPanes = self.NoOfPanes + 1
if self.NoOfPanes > 10:
print("Limit reached")
else:
paneTen
self.NoOfPanes = self.NoOfPanes + 1
pygame.display.update()
它看起来像什么:
写在函数中的文本就是我想要实现的。我已经这样做了,但正如我前面所说的,这是愚蠢的长。这是实现我已有成果的最佳方式还是有更好的方式?你知道吗
(稍后我将更改坐标,以便所有十个窗格都可见,但出于测试目的,我这样做了。)
我会这样做。你知道吗
我们遍历窗格位置,在正确的窗格处添加文本,在有足够的窗格时停止。你知道吗
也许是这样的?你知道吗
相关问题 更多 >
编程相关推荐