北京货币兑换社区社区

Python学习笔记8——汇率计算器

极客剑寮2018-11-08 07:01:07

    前两次,我们初步学习了Python的图形界面库Tkinter,这一次,我们来试着做一个汇率换算计算器。

    还是老样子,先把上次的代码弄过来:

from tkinter import *
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))

接下来,我们来设计窗口:

Entry1Combbox1
Entry2Combbox2
Label
Button1Button2

用之前的pack是很难做到这样的布局的,所以这次,我们来用grid。

grid()使用表格的形式来布局控件,最重要的参数:

row:显示的行。

column:显示的列。

rowspan:跨行显示。

columnspan:跨列显示

我们先把那个标签和两个按钮加上:

from tkinter import *
#汇率表
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)控件为了让变量绑定输入框,我们把汇率计算函数改写了一下:

from tkinter import *

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模块:

from tkinter.ttk import *

我们再加上:

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属性,就完成了一个汇率计算器!



如果这篇文章对你有帮助,请点个赞,你的支持就是我的动力!

点击扫描二维码,关注极客剑寮!