数字累加器(非常简单,一看就会)

目录

运行结果

程序讲解

代码讲解

全部代码


运行结果

程序讲解

在输入框中输入需要累加的数字点击计算就会得出运算结果

代码讲解

主要使用tkinter包实现

tkinter是Python中用于构建图形用户界面(GUI)的标准库。它提供了一组工具和组件,可以用来创建各种窗口、按钮、文本框、菜单等GUI元素,并通过事件处理来实现交互功能。

首先导入tkinter包完成窗口的创建和定义

#导包
import tkinter as tk
# 实例化窗口
win = tk.Tk()
# 窗口命名
win.title('win')
# 窗口大小
win.geometry('300x300')
# 刷新窗口
win.mainloop()

运行结果

这是我们定义的窗口,窗口没有任何东西,现在我们往窗口添加控件

frame1 = tk.Frame(win)
frame1.grid(row=0, column=0,padx=10)
  • tk.Frame(win):创建一个新的框架对象,将其放置在win窗口中。
  • frame1.grid(row=0, column=0, padx=10):使用grid布局管理器将frame1框架放置在win窗口中的第0行、第0列位置,并设置左右边距为10个像素(padx=10
l1 = tk.Label(frame1,text="输入数字")
l1.grid(row=0,pady=2)
  • tk.Label(frame1, text="输入数字"):创建一个新的标签对象,将其放置在frame1框架中,并设置标签显示的文本为"输入数字"。
  • l1.grid(row=0, pady=2):使用grid布局管理器将l1标签放置在frame1框架中的第0行,并设置上下边距为2个像素(pady=2)。
e1 = tk.Entry(frame1,bd=5,width=10)
e1.grid(row=1,pady=20)
  • tk.Entry(frame1, bd=5, width=10):创建一个新的输入框对象,将其放置在frame1框架中,并设置输入框的边框宽度为5个像素,宽度为10个字符。
  • e1.grid(row=1, pady=20):使用grid布局管理器将e1输入框放置在frame1框架中的第1行,并设置上下边距为20个像素(pady=20
l2 = tk.Label(frame1,text="运算结果")
l2.grid(row=3,pady=7)
t1= tk.Text(frame1,bg='red',state="normal",width=10,height=10)
t1.grid(row=4)
frame2 = tk.Frame(win)
frame2.grid(row=0,column=1)
t2 = tk.Text(frame2,state="normal",width=20,height=15)
t2.grid(row=0,column=1,pady=10)
  • tk.Text(frame1, bg='red', state="normal", width=10, height=10):创建一个新的文本框对象,将其放置在frame1框架中,并设置文本框的背景颜色为红色,状态为正常,宽度为10个字符,高度为10行。
  • t1.grid(row=4):使用grid布局管理器将t1文本框放置在frame1框架中的第4行。

现在我们运行

接下来我们定义函数来实现累加算法

def clockme():
    num = int(e1.get())
    count = 0
    for i in range(0,num+1):
        t2.insert('end',f"{i}")
        t2.insert('end', "\n")
        count += i
    t1.insert('end',f"{count}")
  • num = int(e1.get()):从输入框e1中获取用户输入的内容,并将其转换为整数类型后赋值给变量num
  • count = 0:初始化变量count为0,用于累加从0到num的整数之和。
  • for i in range(0, num+1)::使用for循环遍历从0到num的整数。
  • t2.insert('end', f"{i}"):将当前整数i插入到文本框t2的末尾。
  • t2.insert('end', "\n"):插入一个换行符\n到文本框t2的末尾,实现换行显示。
  • count += i:累加当前整数i的值到变量count中。
  • t1.insert('end', f"{count}"):将累加结果count的值插入到文本框t1的末尾。

最后定义按钮来调用函数

button = tk.Button(frame2,text="计算",command=clockme,bd=3,width=17,height=2)
button.grid(row=2,column=1,padx=5,pady=20)
  • button = tk.Button(frame2, text="计算", command=clockme, bd=3, width=17, height=2):创建一个名为button的按钮对象,该按钮显示文本为"计算",当按钮被点击时执行clockme函数,按钮的边框宽度为3,宽度为17个字符,高度为2个字符。
  • button.grid(row=2, column=1, padx=5, pady=20):使用grid布局管理器将按钮button放置在frame2框架中的第2行第1列的位置,同时设置按钮与周围组件的水平间距为5个像素(padx=5),垂直间距为20个像素(pady=20

最后我们就完成了程序的编写

全部代码

#导包
import tkinter as tk
# 实例化窗口
win = tk.Tk()
# 窗口命名
win.title('win')
# 窗口大小
win.geometry('300x300')

frame1 = tk.Frame(win)
frame1.grid(row=0, column=0,padx=10)

l1 = tk.Label(frame1,text="输入数字")
l1.grid(row=0,pady=2)
e1 = tk.Entry(frame1,bd=5,width=10)
e1.grid(row=1,pady=20)

l2 = tk.Label(frame1,text="运算结果")
l2.grid(row=3,pady=7)
t1= tk.Text(frame1,bg='red',state="normal",width=10,height=10)
t1.grid(row=4)

frame2 = tk.Frame(win)
frame2.grid(row=0,column=1)
t2 = tk.Text(frame2,state="normal",width=20,height=15)
t2.grid(row=0,column=1,pady=10)

def clockme():
    num = int(e1.get())
    count = 0
    for i in range(0,num+1):
        t2.insert('end',f"{i}")
        t2.insert('end', "\n")
        count += i
    t1.insert('end',f"{count}")


button = tk.Button(frame2,text="计算",command=clockme,bd=3,width=17,height=2)
button.grid(row=2,column=1,padx=5,pady=20)
win.mainloop()

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值