我们的库存系统根据模式生成10位数的项目编号 . 我写了一个程序,它将执行以下操作:
-
使用不正确的数字取10位数的项目编号,并通过更改每个数字返回可能的有效项目编号列表 .
-
带一个缺少数字的9位数的项目编号,并通过插入一个数字返回有效的10位数的项目编号列表
-
取一个带有额外数字的11位数的项目编号,并通过删除一个数字返回有效的10位数的项目编号列表
-
取一个转换了2位数的10位数的项目编号,并通过切换数字返回有效10位数的项目编号列表
我有5个功能来完成这个任务 . 用于上述每个实例的函数,然后是确定项目编号是否有效的函数 . 这一切都正常 .
现在我想用GUI创建程序,该GUI提供上述4个选项以及退出选项 . 因此,列出1-5的各种菜单供用户选择 . 一旦用户输入他们想要的选项号1到5,我需要提示用户输入项目编号,然后在GUI中打印出可能的项目编号的返回列表 .
如果可能的话,我想使用tkinter创建我的GUI,因为它是我非常有限的知识 . 我使用的是Python 3.2.2 . 这可能吗?
更新::
看完建议后,我有以下代码:
class App:
def __init__(self, master):
frame = Frame(master)
frame.pack()
self.l=Label(frame, width = 50, anchor=CENTER, justify=CENTER, text="Please choose from the following options: \n1. Option1\n2. Option2\n3. Option3\n4. Option4\n5. Quit")
self.l.pack()
self.e = Entry(frame, width=5)
self.e.pack()
self.e.focus_set()
self.w1=Label(frame, text="Please enter 1-5")
self.w1.pack()
self.e1=Entry(frame, width=16)
self.e1.pack()
self.e1.focus_set()
self.w2=Label(frame, text="Enter item number")
self.w2.pack()
self.button=Button(frame, text="Return List", state=DISABLED)
self.button.pack()
root = Tk()
app=App(root)
root.mainloop()
现在我的问题是我如何从2个条目小部件(self.e和self.e1)获取信息并使用按钮执行一个函数 .
例如,如果用户在self.e条目小部件上输入选项4,在self.e1小部件上输入1234567890,然后按下按钮,我需要调用函数option4(1234567890) .
我需要两个输入小部件来返回数字但似乎被困在如何实现它 . 我在按钮小部件中意识到我需要用命令=替换state =但不确定如何将e.get()和e2.get()绑定到按钮 .
谢谢你的帮助!
1 回答
这有很多不同的解决方案,无论如何你必须创建一个tkinter变量并将它连接到你的
self.e
Entry . 像那样:通过声明您将在e条目中输入的任何内容,将被放入var1变量中 . 您将能够通过
self.var1.get()
访问var1的值并按以下方式将函数
func(*args)
与按钮结合使用:请注意,它是
func
,而不是func(*args)
. 所以tk.Button
command
选项应该得到你的函数的处理程序 .另外,在我看来,试试http://www.tkdocs.com/tutorial/这是一个很好的理由,让我知道如何用tk做GUI