我下面這個介紹到Tkinter的,特別是頁面上的對話框填寫例29. http://www.ittc.ku.edu/~niehaus/classes/448-s04/448-standard/tkinter-intro.pdf麻煩與Tkinter的錄入組件
,我發現了以下錯誤:
d = MyDialog(root)
TypeError: this constructor takes no arguments
我刪除了參數從變量d和wait_window的參數(參見下面的代碼)並且程序將運行,但是沒有輸入字段。
下面是代碼
from Tkinter import *
class MyDialog:
def init(self, parent):
top = Toplevel(parent)
Label(top, text="Value").pack()
self.e = Entry(top)
self.e.pack(padx=5)
b = Button(top, text="OK", command=self.ok)
b.pack(pady=5)
def ok(self):
print "value is", self.e.get()
self.top.destroy()
root = Tk()
Button(root, text="Hello!").pack()
root.update()
d = MyDialog(root)
root.wait_window(d.top)
嗯...... OP實際上並沒有使用'object .__ init__',因爲這是一箇舊式的類 - 但是你是對的,它的功能基本上是一樣的。 – mgilson
@ user1104854 - 查看我在這個問題上的編輯 – mgilson
如果您有新問題,請將其作爲新問題發佈。並且請不要編輯您的問題以包含答案。您的原始問題已得到解答。請接受其中一個答案。 – 2012-10-22 12:20:08