本文共 1242 字,大约阅读时间需要 4 分钟。
使用 tkinter.Tk() 创建主窗口,设置窗口标题和大小可调性:
root = tkinter.Tk()root.title('简易计算器')root.resizable(0, 0) Tkinter 提供丰富的组件,如 Entry、Text 和 Button,可用于构建用户界面。
通过 grid 方法将组件按行或列布局。可以使用 sticky 参数设置对齐方式。
tkinter.Entry 用于单行文本输入,可设置 justify 属性。partial 创建模板函数,简化按钮功能定义。按钮的 activebackground 属性设置按下后颜色,command 参数指定函数执行逻辑。
get_input:从文本框获取输入,处理合法字符。clear:清空文本框。calc:执行计算,支持基本运算,异常处理后显示提示信息。entry = tkinter.Entry(root, justify="right")entry.grid(row=0, column=0, columnspan=4, padx=10, pady=10)def place_button(text, func, func_params, **place_params): button = tkinter.Button(root, bg='orange', activebackground='Yellow', command=lambda: func(*func_params)) button.grid(**place_params)# 数字键盘for i in range(7): place_button(str(i), get_input, (entry, str(i)), row=i, column=i, ipadx=5, pady=5)# 运算符place_button('*', get_input, (entry, '*'), row=1, column=3, ipadx=5, pady=5)place_button('-', get_input, (entry, '-'), row=2, column=3, ipadx=5, pady=5)place_button('+', get_input, (entry, '+'), row=3, column=3, ipadx=5, pady=5)# 计算按钮place_button('=', calc, (entry,), row=4, column=3, ipadx=5, pady=5)root.mainloop() sticky 和 pad 参数。转载地址:http://niyg.baihongyu.com/