【发布时间】:2018-01-02 16:19:05
【问题描述】:
我正在尝试制作一个带有按钮的 GUI,当玩家将鼠标悬停在按钮上时会更改按钮,并将它们引导到游戏的该部分而不打开新窗口。我在下面包含了我的代码。
import pygame, sys, tkinter
from pygame.locals import *
#Initialize pygame and define colours
pygame.init()
white = 255, 255, 255
#Sets the resolution to 640 pixels by 720 pixels and caption for pygame window
DISPLAY_SURF = pygame.display.set_mode((640, 720))
pygame.display.set_caption("The Hunt!")
#Create a clock object
clock = pygame.time.Clock()
FPS = 60
#Define a variable to refer to image
background = pygame.image.load("Startermenu.png")
start = pygame.image.load("PlayGameButton.png")
help = pygame.image.load("HelpButton.png")
credits = pygame.image.load("ShowCreditsButton.png")
#Start main loop
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
DISPLAY_SURF.fill(white)
DISPLAY_SURF.blit(background,(0,0))
DISPLAY_SURF.blit(start, (0, 140))
DISPLAY_SURF.blit(help, (0, 186))
DISPLAY_SURF.blit(credits, (0, 235))
pygame.display.update()
【问题讨论】:
-
你当前的代码是做什么的?
-
我不太确定我是否理解您要执行的操作,但我可能会先捕获鼠标移动事件,然后将鼠标坐标与按钮图形定义的矩形进行比较。每次鼠标在按钮区域内移动时,都会调用相应的函数。
-
这和 tkinter 有什么关系?你确定你的代码在这里是正确的吗?
-
我正在尝试设计一个 GUI,所以我做了一些研究,发现 tkinter 是 python GUI 工具包。我的代码应该打开一个窗口,其中的启动菜单设计为 blited 到表面,并带有 3 个单独的按钮 blited 但链接到 pygame 的一部分
-
我真的不明白你在做什么......你为什么要使用 tkinter 和 pygame?
标签: python user-interface button pygame