前两次,我们初步学习了Python的图形界面库Tkinter,这一次,我们来试着做一个汇率换算计算器。
还是老样子,先把上次的代码弄过来:
fromtkinterimport*
root = Tk()
root.title("汇率换算")
root.geometry("360x280")
root.mainloop()
我们把窗口的标题改为汇率换算,窗口大小改成“360x280”,我们来先写一个汇率换算的函数。
#汇率表
rate = {'CNY':1.000, 'USD':0.158, 'TWD':4.627, 'JPY':16.769, 'HKD':1.239}
def curconvert(acur, bcur, mount):
crate = rate[bcur]/rate[acur]
return ("%.2f" % (mount*crate))
接下来,我们来设计窗口:
用之前的pack是很难做到这样的布局的,所以这次,我们来用grid。
grid()使用表格的形式来布局控件,最重要的参数:
row:显示的行。
column:显示的列。
rowspan:跨行显示。
columnspan:跨列显示
我们先把那个标签和两个按钮加上:
fromtkinterimport*
#汇率表
rate = {'CNY':1.000, 'USD':0.158, 'TWD':4.627, 'JPY':16.769, 'HKD':1.239}
def curconvert(acur, bcur, mount):
crate = rate[bcur]/rate[acur]
return ("%.2f" % (mount*crate))
root = Tk()
root.title("汇率换算")
root.geometry("360x280")
label = Label(master = root, text = "汇率换算")
label.grid(row = 2, column = 0, rowspan = 2)
button1 = Button(master = root, text = "计算")
button1.grid(row = 3,column = 0)
button2 = Button(master = root, text = "退出")
button2.grid(row = 3,column = 1)
root.mainloop()
我们再来看看输入框(Entry)控件为了让变量绑定输入框,我们把汇率计算函数改写了一下:
fromtkinterimport*
root = Tk()
#汇率表
rate = {'CNY':1.000, 'USD':0.158, 'TWD':4.627, 'JPY':16.769, 'HKD':1.239}
acur = StringVar()
bcur = StringVar()
mount1 = StringVar()
mount2 = StringVar()
def curconvert():
crate = rate[bcur]/rate[acur]
return ("%.2f" % (mount*crate))
root.title("汇率换算")
root.geometry("360x280")
label = Label(master = root, text = "汇率换算")
label.grid(row = 2, column = 0, rowspan = 1)
button1 = Button(master = root, text = "计算")
button1.grid(row = 3,column = 0)
button2 = Button(master = root, text = "退出")
button2.grid(row = 3,column = 1)
entry1 = Entry(root, textvariable = mount1)
entry1.grid(row = 0, column = 0)
entry2 = Entry(root, textvariable = mount2)
entry2.grid(row = 1, column = 0)
root.mainloop()
最后是两个combobox(下拉框),为了使用这个控件,我们需要引入ttk模块:
fromtkinter.ttkimport*
我们再加上:
combobox1 = Combobox(root, textvariable = acur)
combobox1['values'] = ("CNY", "USD", "TWD", "JPY", "HKD")
combobox1.grid(row = 0, column = 1)
combobox1 = Combobox(root, textvariable = bcur)
combobox1['values'] = ("CNY", "USD", "TWD", "JPY", "HKD")
combobox1.grid(row = 1, column = 1)
好了,这样,我们的界面就完成了!
我们再给button1加上command=curconvert属性,button2加上command=exit属性,就完成了一个汇率计算器!
如果这篇文章对你有帮助,请点个赞,你的支持就是我的动力!
领取专属 10元无门槛券
私享最新 技术干货