创建可以通过"import"重用的 python 对话框的正确方法是什么?



我正在编写一个python应用程序,我需要一个可以从多个地方访问的实用程序对话框。我已经在它自己的文件中创建了对话框代码。下面是我写这篇文章的一个简单例子。

import tkinter
class MessageBox():
def __init__(self):
self.root = tkinter.Tk()
self.returnVal = False
frm = tkinter.Frame(self.root)
btnOk=tkinter.Button(text="Ok")
btnCancel=tkinter.Button(text="Cancel")
btnOk['command'] = self.btnOk_action
btnCancel['command'] = self.btnCancel_action
btnOk.pack()
btnCancel.pack()
frm.pack()
self.root.protocol("WM_DELETE_WINDOW", self.close_mod)
def btnOk_action(self):
self.returnVal=True
self.root.quit()
def btnCancel_action(self):
self.root.quit()
def close_mod(self):
self.root.quit()
def mbox():
msgbox = MessageBox()
msgbox.root.mainloop()
msgbox.root.destroy()
return msgbox.returnVal

然后我想做的是这样的事情:

import theDialogFile
value=mbox()
print(str(value))

当我尝试这样做时;名称"mbox"未定义";

如果我使用";从对话框文件导入*";这很好,但我真的不明白导入是如何工作的。

做我想做的事情最好的方法是什么?

请随意撕毁我的代码。非常感谢。

如果导入theDialogFile,则该文件中的所有内容都将成为theDialogFile的属性。因此,这个代码在您的情况下会很好地工作:

import theDialogFile
value=theDialogFile.mbox()
print(str(value))

相关内容

最新更新