gpt4 book ai didi

python - 编程新手,无法打开我的主窗口

转载 作者:太空宇宙 更新时间:2023-11-04 03:34:05 24 4
gpt4 key购买 nike

我试着将它与我制作的其他程序进行比较,但到目前为止我没有发现任何错误。应该会出现一个窗口,上面有 4 个按钮。

我包含了代码,所以如果有人知道为什么我的 TK 窗口打不开,那将大有帮助

""" dndcc.py a dungeon and dragon character creator
created by Alex Deal
includes several objects and lots of windows
"""
from tkinter import *
from tkinter import MessageBox

class App(Tk):
def __init__(self):
Tk.__init__(self)

self.headerFont = ("Times New Roman", "16", "bold italic")

self.title("dnd character creator")

self.btnNew = Button(self, text= "Create New", command = self.makeNewFrame)
self.btnNew.grid(row = 0)

self.btnSave = Button(self, text= "Save Current", command = self.saveFile)
self.btnSave.grid(row = 1)

self.btnLoad = Button(self, text = "Load File", command = self.loadFile)
self.btnLoad.grid(row = 2)

self.btnPrint = Button(self, text = "Create Character Sheet", command = self.characterSheet)
self.btnPrint.grid(row = 3)

def main():
app = App()
app.mainloop()

if __name__ == "__main__":
main()

关于传统知识的其他问题:

到目前为止,TK 对我来说很难掌握。我的程序的其他部分没有太多问题,但我对 TK 了解不多。

具体来说,app(TK) 内部的 self.mainloop() 和外部的 app.mainloop() 有区别吗?我从我现在的老师那里看到了这两样东西。

此外,如何制作新框架?我似乎找不到太多关于创建新框架的信息(即,在不打开新窗口的情况下更改当前窗口上的小部件)。

最佳答案

如果这是您的确切代码,它需要两件事:

  1. messagebox,不是 MessageBox
  2. 必须定义绑定(bind)到命令(makeNewFrame 等)的函数,即使它们的主体现在只是pass

我解决了这些问题,并使用正确的按钮打开了主窗口。

如果您想更改窗口中显示的小部件,请使用 grid_forget() 删除不需要的小部件(如果您愿意,您也可以删除小部件),或者只需重新配置过时的小部件配置Effbot有很多有用的信息。

关于python - 编程新手,无法打开我的主窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29907831/

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