【发布时间】:2013-02-17 02:36:52
【问题描述】:
基本上我已经为我的游戏创建了一个 pygame 菜单,当我单击它们时它会加载所有其他 pygame 窗口,但是对于添加用户等某些方面,我是在 Tkinter GUI 中创建的。当我在我的 pygame 上单击加载它们时,它不会加载 Tkinter GUI,有谁知道我该如何解决这个问题,或者是否需要添加一些东西才能使其工作。
它好像要加载一些东西但没有加载,第一个名为“mathsvaders”的加载很好,因为它是一个 pygame 程序,但高分在 tkinter 中并且不加载:
pos = 1
while True:
# events
for e in pygame.event.get():
if e.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif e.type == pygame.KEYDOWN:
if e.key == pygame.K_DOWN:
pos += 1
if pos > 5:
pos = 1
elif e.key == pygame.K_UP:
pos -= 1
if pos < 1:
pos = 5
elif e.key == pygame.K_RETURN:
if pos == 1:
import MathsvadersReal
elif e.key == pygame.K_RETURN:
if pos == 2:
import Highscore
elif pos == 5:
pygame.quit()
sys.exit()
表单代码如下:
import Tkinter import Databaseconnector
class simpleapp_tk(Tkinter.Tk):
def __init__(self,parent):
Tkinter.Tk.__init__(self,parent)
self.parent = parent
self.initialize()
def initialize(self):
def create_widgets(self):
# create welcome label
label1 = Tkinter.Label(self, text = "Hello world")
label1.grid(row = 0, column = 2, columnspan = 4, sticky = 'E')
if __name__ == "__main__":
app = simpleapp_tk(None)
app.title('my application')
app.geometry("250x200")
app.mainloop()
【问题讨论】:
-
只是一个提示,如果你需要别人的帮助,你应该展示代码示例。
-
它好像要加载一些东西但没有加载,第一个名为“mathsvaders”的加载很好,因为它是一个 pygame 程序,但高分在 tkinter 中并且不加载:
-
对不起,它的意思是说 pos == 2,但即使这样它也不起作用。
-
@SmithJr 这个 sn-p 不足以看出问题出在哪里,使用 Tkinter 函数的部分可能会更有帮助。
-
我不能确定,因为它周围的代码可能会解决这个问题,但是如果你还在 while 循环中,你几乎无法维护一个 tkinter 应用
标签: python user-interface tkinter pygame