我目前正在尝试使用Python 3.6中的tkinter模块(通过Spyder)在一些基本的用户输入框中编写内容。我可以确认模块已加载,并且出现了选择简单对话框的选项,但是我不断收到以下错误:
AttributeError:模块'tkinter'没有属性'simpledialog'
我尝试寻找其他选项,但是其他用户输入选项似乎在我的Python界面上不起作用。它要么崩溃,要么数据结构不正确。
有趣的是,过去,我在Python中做过类似的事情,没有错误,但这一直伴随着这个特殊的编程工作。
import tkinter as tk
import pyodbc as py
py.pooling = False
## INPUT YOUR USER ID AND PASSWORD AND DECLARE YOUR CONNECTION
## THE DIALOG BOXES MAY POP OPEN ON ANOTHER SCREEN
## THE PASSWORD INPUT IS MASKED AND WILL NOT SHOW IN THE
## VARIABLE EXPLORER
ID = tk.simpledialog.askstring("Please input your username.","Username: ")
PW = tk.simpledialog.askstring("Please input your password.",
"Password: ", show='*')
CONN = tk.simpledialog.askstring("Please input your connection.",
"Connection: ")
我的预期结果是将出现一个弹出窗口,并且我将能够获取所需的用户信息,以维持与所使用服务器的稳定连接。
预先感谢您的建议!
答案 0 :(得分:1)
simpledialog
不在tkinter
中,而在tkinter.simpledialog
中,您必须将其导入
import tkinter as tk
import tkinter.simpledialog
root = tk.Tk() # create main window
#root.iconify() # minimize main window
root.withdraw() # hide main window
answer = tkinter.simpledialog.askstring("Question", 'Your name:')
print(answer)
#root.destroy() # should work without it
#root.mainloop() # should work without it