【发布时间】:2015-02-03 01:04:22
【问题描述】:
我一直在使用 Python 创建游戏,并且在我的一个函数中,
def Enemy_Party(enemies, party):
def Sub_Fight(member, enemy, enemies, Prep):
Prep.destroy()
Fight(member, enemy, enemies)
for x in enemies:
Prep = Tk()
for y in party:
button = Button(Prep, text=y.name, command=Sub_Fight(y, x, enemies, Prep)).pack()
Prep.mainloop()
创建了一个窗口,但其中没有任何内容。没有错误消息,空白窗口就在那里。
是的,我有一个函数 Fight,它确实需要四个参数。 'enemies' 和 'party' 都被定义为列表,并且在其中都有值(我已经检查过)。
对此,我有两个问题:“为什么程序在创建一个空白窗口后会停止?”和“你能在'For循环'中定义窗口吗?
如果您需要更多代码,请告诉我,提前致谢。
【问题讨论】:
-
您的 sn-p 对演示正在发生的事情没有多大帮助。您能否提供minimal working example 证明您遇到的问题?
-
另外,这个
button = Button(Prep, text=y.name, command=Sub_Fight(y, x, enemies, Prep)).pack()将导致按钮为空。原因是 pack 返回 null。也许这是您遇到的问题的一部分?
标签: python function for-loop tkinter window