我是初学者,我知道我不能遵循正确的编码程序。 我将所有功能都放在一个文件中,并且我已将四个参数传递给此文件, 但我真的需要用户输入。 我无法弄清楚如何从用户那里获得四个参数。 我添加了用户的建议,但我仍然没有得到我正在寻找的数据
我正在使用Winpython 2.7.5。
我想获得三个在独立版本中运行的字符串,如在stackoverflow上发布的那样。 How do I print and have user input in a text box in tkinter, Python 3.2.5?
然后我希望用户打开一个文件对话框并选择一个文本文件,类似于 filedialog, tkinter and opening files
如果我使用下面的代码,那么我无法访问文件名的返回值
import Tkinter, tkFileDialog
def myDialog():
root = Tkinter.Tk()
results = []
label1 = Tkinter.Label( root, text="Header")
E1 = Tkinter.Entry(root, bd =5)
label2 = Tkinter.Label( root, text="Machine Name")
E2 = Tkinter.Entry(root, bd =5)
label3 = Tkinter.Label( root, text="final filename")
E3 = Tkinter.Entry(root, bd =5)
def getDate():
results.append(E1.get())
results.append(E2.get())
results.append(E3.get())
root.destroy() # close the window
def getFile():
results.append(tkFileDialog.askopenfilename())
submit = Tkinter.Button(root, text ="Submit", command = getDate)
openfiledialog = Tkinter.Button(root, text ="Open File", command = getFile)
label1.pack()
E1.pack()
label2.pack()
E2.pack()
label3.pack()
E3.pack()
submit.pack(side =Tkinter.LEFT)
openfiledialog.pack(side =Tkinter.RIGHT)
root.mainloop() # the mainloop is used to paint the gui and react on input
return results
checkresults = []
checkresults = myDialog
答案 0 :(得分:0)
我认为你几乎就是你想做的事情:
def myDialog():
root = Tk()
results = []
label1 = Label( root, text="Header")
E1 = Entry(root, bd =5)
label2 = Label( root, text="Machine Name")
E2 = Entry(root, bd =5)
label3 = Label( root, text="final filename")
E3 = Entry(root, bd =5)
def getDate():
results.append(E1.get())
results.append(E2.get())
results.append(E3.get())
root.quit() # end the mainloop
root.destroy() # close the window
submit = Button(root, text ="Submit", command = getDate)
label1.pack()
E1.pack()
label2.pack()
E2.pack()
label3.pack()
E3.pack()
submit.pack(side =BOTTOM)
root.mainloop() # the mainloop is used to paint the gui and react on input
return results
这个myDialog会打开你编写的对话框并在提交时关闭它。