如何 link 这两个 pygame-menus
How to link those two pygame-menus
我使用 Pygame-menu 创建了两个菜单。第一个是开始菜单(打开程序时)。
import pygame
import pygame_menu
from pygame import mixer
pygame.init()
#Mida i nom de la finestra
surface = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Projecte MatZanfe")
font = pygame_menu.font.FONT_8BIT
font1 = pygame_menu.font.FONT_NEVIS
menu = pygame_menu.Menu('Projecte MatZanfe', 600, 400,
theme=pygame_menu.themes.THEME_SOLARIZED)
user_input = menu.add.text_input('User: ', font_name = font1, font_color = 'blue')
age_input = menu.add.text_input('Age: ', font_name = font1,font_color = 'Black')
menu.add.button('Start', font_name = font, font_color = 'green')
menu.add.button('Exit', pygame_menu.events.EXIT, font_name = font,font_color = 'red')
menu.mainloop(surface)
然后,另一个是等级选择器。
import pygame
import pygame_menu
from pygame import mixer
pygame.init()
#Mida i nom de la finestra
surface = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Projecte MatZanfe")
#Logotip de la finestra
logotip = pygame.image.load("calculator.png")
pygame.display.set_icon(logotip)
font = pygame_menu.font.FONT_8BIT
font1 = pygame_menu.font.FONT_NEVIS
font2 = pygame_menu.font.FONT_BEBAS
menu = pygame_menu.Menu('Selecció dels mòduls', 600, 400,
theme=pygame_menu.themes.THEME_SOLARIZED)
mixer.music.load('LevelSelector.wav')
mixer.music.play(-1)
menu.add.button('Sums', font_name = font2, font_color = 'green')
menu.add.button('Subtracts', font_name = font2, font_color = 'blue')
menu.add.button('Multiplications', font_name = font2,font_color = 'red')
menu.add.button('Divisions', font_name = font2, font_color = 'purple' )
menu.add.button("Back", font_name = font1, font_color = 'black')
menu.mainloop(surface)
我怎么能合并它们,所以当我从第一个菜单按下“开始”按钮时,整个界面显示第二个菜单,但如果我按下“返回”按钮,它 returns 到第一个菜单?文件名是:Menu - Selector.
不太熟悉这个库,但我猜。
在此处勾选docs。
来自参考 here,
# Import the required libraries
import pygame
import pygame_menu
# Initialize pygame
pygame.init()
surface = pygame.display.set_mode((600, 400))
# Make menu 2
menu2 = pygame_menu.Menu('Menu 2', 400, 300, theme=pygame_menu.themes.THEME_BLUE)
...
# Make main menu
menu = pygame_menu.Menu('Welcome', 400, 300, theme=pygame_menu.themes.THEME_BLUE)
...
menu.add.button('Menu2', menu2)
menu.add.button('Quit', pygame_menu.events.EXIT)
# Run your menu
menu.mainloop(surface)
您可以假设 surface
是您的显示表面。
我使用 Pygame-menu 创建了两个菜单。第一个是开始菜单(打开程序时)。
import pygame
import pygame_menu
from pygame import mixer
pygame.init()
#Mida i nom de la finestra
surface = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Projecte MatZanfe")
font = pygame_menu.font.FONT_8BIT
font1 = pygame_menu.font.FONT_NEVIS
menu = pygame_menu.Menu('Projecte MatZanfe', 600, 400,
theme=pygame_menu.themes.THEME_SOLARIZED)
user_input = menu.add.text_input('User: ', font_name = font1, font_color = 'blue')
age_input = menu.add.text_input('Age: ', font_name = font1,font_color = 'Black')
menu.add.button('Start', font_name = font, font_color = 'green')
menu.add.button('Exit', pygame_menu.events.EXIT, font_name = font,font_color = 'red')
menu.mainloop(surface)
然后,另一个是等级选择器。
import pygame
import pygame_menu
from pygame import mixer
pygame.init()
#Mida i nom de la finestra
surface = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Projecte MatZanfe")
#Logotip de la finestra
logotip = pygame.image.load("calculator.png")
pygame.display.set_icon(logotip)
font = pygame_menu.font.FONT_8BIT
font1 = pygame_menu.font.FONT_NEVIS
font2 = pygame_menu.font.FONT_BEBAS
menu = pygame_menu.Menu('Selecció dels mòduls', 600, 400,
theme=pygame_menu.themes.THEME_SOLARIZED)
mixer.music.load('LevelSelector.wav')
mixer.music.play(-1)
menu.add.button('Sums', font_name = font2, font_color = 'green')
menu.add.button('Subtracts', font_name = font2, font_color = 'blue')
menu.add.button('Multiplications', font_name = font2,font_color = 'red')
menu.add.button('Divisions', font_name = font2, font_color = 'purple' )
menu.add.button("Back", font_name = font1, font_color = 'black')
menu.mainloop(surface)
我怎么能合并它们,所以当我从第一个菜单按下“开始”按钮时,整个界面显示第二个菜单,但如果我按下“返回”按钮,它 returns 到第一个菜单?文件名是:Menu - Selector.
不太熟悉这个库,但我猜。
在此处勾选docs。
来自参考 here,
# Import the required libraries
import pygame
import pygame_menu
# Initialize pygame
pygame.init()
surface = pygame.display.set_mode((600, 400))
# Make menu 2
menu2 = pygame_menu.Menu('Menu 2', 400, 300, theme=pygame_menu.themes.THEME_BLUE)
...
# Make main menu
menu = pygame_menu.Menu('Welcome', 400, 300, theme=pygame_menu.themes.THEME_BLUE)
...
menu.add.button('Menu2', menu2)
menu.add.button('Quit', pygame_menu.events.EXIT)
# Run your menu
menu.mainloop(surface)
您可以假设 surface
是您的显示表面。