Python Pygame覆盖层
好的,我想做一个叠加屏幕 因此,每当按下p键时,屏幕就会暂停,并弹出一个屏幕说 :“按'q'退出,或按'c'继续,” 差不多吧Python Pygame覆盖层,python,overlay,pygame,Python,Overlay,Pygame,好的,我想做一个叠加屏幕 因此,每当按下p键时,屏幕就会暂停,并弹出一个屏幕说 :“按'q'退出,或按'c'继续,” 差不多吧 有人能告诉我怎么做吗?最简单的方法是使用一个子模块,然后为blit()-ing创建一个新的循环到屏幕,并为该暂停菜单处理事件 (这只是方法论;这是我工作项目的方式。) 更新日期:2011年12月13日 以下代码摘录自“父”模块。这只是代码的循环部分。您要查找的是line按钮.doAction(screen),它基本上告诉PyGame执行适用的子模块(不重要;您只需要像平
有人能告诉我怎么做吗?最简单的方法是使用一个子模块,然后为
blit()
-ing创建一个新的循环到屏幕,并为该暂停菜单处理事件
(这只是方法论;这是我工作项目的方式。)
更新日期:2011年12月13日
以下代码摘录自“父”模块。这只是代码的循环部分。您要查找的是line按钮.doAction(screen)
,它基本上告诉PyGame执行适用的子模块(不重要;您只需要像平常一样调用“child”函数)
(当然,从这些示例中已经编写了很多代码;如果您想分离完整的文件,它们是)
如果有更多的问题,请告诉我,因为这可能会让你更加困惑
while mainRunning:
# --- Event Catching & Handling ---
for event in pygame.event.get():
# Quit PyGame safely upon exit
if event.type == pygame.QUIT:
mainRunning = False
# Make the buttons do actions
if event.type == pygame.MOUSEBUTTONUP:
mousePos = pygame.mouse.get_pos()
for button in menuList:
X = button.getXPos()
Y = button.getYPos()
if X[0] < mousePos[0] < X[1] and Y[0] < mousePos[1] < Y [1]:
button.doAction(screen)
pygame.display.flip()
pygame.quit()
def levelChoose(screen, playerData, playerName):
levelChooseRunning = True
while levelChooseRunning:
# --- Event Catching & Handling ---
for event in pygame.event.get():
# Quit PyGame safely upon exit
if event.type == pygame.QUIT:
levelMenuRunning = False
pygame.display.flip()