gpt4 book ai didi

Python GUI 菜单问题

转载 作者:太空宇宙 更新时间:2023-11-03 18:42:51 25 4
gpt4 key购买 nike

我正在尝试创建一个代码,使用 python 在我的 gui 上建立一个菜单。问题是,当我在文件下创建"new"选项时,它不断调用该函数为空函数。它应该只在我单击“新建”时才会关闭,但当我运行该程序时它就会关闭。我在 null 中使用了 print 函数来让我知道它何时被调用

class Board:
def __init__(self, master):
self.master = master
self.setup()

def null(self):
print('o')


def setup(self):


board = tk.Canvas(self.master, width = 800, height = 800)
board.pack()

#Creates the Walls/Floor
board.create_line(0, 790,800, 790, width = 20) #Creates Bottom Line
board.create_line(10, 800,10, 100, width = 35) #Creates Left Wall
board.create_line(790, 800, 790, 100, width = 35) #Creates Right Wall

space = 20
for x in range(6): #Creates pillars
space += 108.5
board.create_line(space, 800, space, 150, width = 20)

board.pack()

def newgame(self):
self.menubar = tk.Menu(self.master)
self.filemenu = tk.Menu(self.master, tearoff = 0)
self.filemenu.add_command(label="New", command = self.null())
self.menubar.add_cascade(label="File", menu=self.filemenu)
self.filemenu.add_separator()
self.master.config(menu=self.menubar)

最佳答案

self.null 被调用(关闭),因为您通过在其后放置 () 来告诉它这样做。请记住,Python 在函数名称后使用 (...) 来调用该函数。

要解决此问题,只需删除括号即可:

self.filemenu.add_command(label="New", command=self.null)

现在,command 被设置为 self.null引用

关于Python GUI 菜单问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20157452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com