找回密码
 中文实名注册
查看: 333|回复: 9

陈海源 格物斯坦 603 tkinter第一节课

[复制链接]

694

主题

1080

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
22790
发表于 2022-4-23 19:06:58 | 显示全部楼层 |阅读模式
[Python] 纯文本查看 复制代码
import tkinter as tk    #tk是一个名字
#-----设置窗口--------------
root=tk.Tk()  #创建一个窗口
root.geometry('600x400')  # 设计窗口大写 ,geometry几何
root.resizable(0,0)   #禁止调节窗口大小
root.title('第一个窗口,名字叫 root')  # 修改窗口的标题
#-----写函数--------------

def callback():
    r=float(shuru1.get())  #新建一个变量r,作为半径,获取输入框1的内容
    c=2*r*3.14   #周长
    m=r**2*3.14   #面积
    shuru2.delete('0','end')   #删除输入框2的内容
    shuru2.insert('insert',c)  #输入框2添加c
    shuru3.delete('0','end')
    shuru3.insert('insert',m)
    print(r,c,m)

#------------------------
#设计界面
#------------------------
#创建按钮
# command命令调用callback这个函数,callback是用def创建的函数
but1 = tk.Button(root, text='计算', command=callback)
but1.grid(row=3, column=1)

but2 = tk.Button(root, text='关闭', command=callback)
but2.grid(row=3, column=2)


#创建3个标签
labe1 = tk.Label(root, text='请输入半径labe1:')  # 第一个参数是说明要添加到哪里,
labe2 = tk.Label(root, text='周长:')  # 
labe3 = tk.Label(root, text='面积:')  # 
#把标签布局
labe1.grid(row=0)  # 布置第一行row  行
labe2.grid(row=1)  # 布置第一行
labe3.grid(row=2)  # 布置第一行

#创建3个输入框
shuru1 = tk.Entry(root)     
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
#把输入框布局
shuru1.grid(row=0,column=1)   #columu 列
shuru2.grid(row=1, column=1)  # 
shuru3.grid(row=2, column=1)  # 

#------------------------

root.mainloop()     #开启循环,让窗口处于显示状态

回复

使用道具 举报

10

主题

151

帖子

3021

积分

论坛元老

Rank: 8Rank: 8

积分
3021
发表于 2022-4-23 19:11:09 | 显示全部楼层
输入框没有
[Python] 纯文本查看 复制代码
import tkinter as tk
#设置窗口
root = tk.Tk()
root.geometry('600x400')
root.resizable(0,0)
#---------函数-----------

def b():
    r=float(shuru1.get())#新建变量r,获取输入框1
    c=2*r*3.14
    s=r*r*3.14
    shuru2.delete('0','end')
    shuru2.delete('0','end')
    shuru2.insert('insert',c)
    shuru2.insert('insert',m)



#---------函数-----------
#创建按钮
but1=tk.Button(root,text='计算',command=b)
but1.grid(row=3,column=1)
#创建标签

labe1 = tk.Label(root, text='请输入半径labe1:')
labe2 = tk.Label(root, text='周长:')
labe3 = tk.Label(root, text='面积:')
#标签布局
labe1.grid(row=0)#第一个参数要标注添加到哪里
labe2.grid(row=1)
labe3.grid(row=2)
#创建3个输入框
shuru1 = tk.Entry(root)
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
#输入框布局
shuru1.grid(row,column=1)#column 列
shuru2.grid(row,column=1)
shuru3.grid(row,column=1)


root.maimloop()
回复

使用道具 举报

9

主题

59

帖子

1585

积分

金牌会员

Rank: 6Rank: 6

积分
1585
发表于 2022-4-23 19:12:40 | 显示全部楼层
import tkinter as tk    #tk是一个对象
#-----设置窗口--------------
root=tk.Tk()  #创建一个窗口
root.geometry('600x400')  # 设计窗口大写 ,geometry几何
root.resizable(0,0)   #禁止调节窗口大小
root.title('第一个窗口,名字叫 root')  # 修改窗口的标题
#-----写函数--------------

def callback():
    r=float(shuru1.get())  #新建一个变量r,作为半径,获取输入框1的内容
    c=2*r*3.14   #周长
    m=r**2*3.14   #面积
    shuru2.delete('0','end')   #删除输入框2的内容
    shuru2.insert('insert',c)  #输入框2添加c
    shuru3.delete('0','end')
    shuru3.insert('insert',m)
    print(r,c,m)

#------------------------
#设计界面
#------------------------
#创建按钮
# command命令调用callback这个函数,callback是用def创建的函数
but1 = tk.Button(root, text='计算', command=callback)
but1.grid(row=3, column=1)

but2 = tk.Button(root, text='关闭', command=callback)
but2.grid(row=3, column=2)


#创建3个标签
labe1 = tk.Label(root, text='请输入半径labe1:')  # 第一个参数是说明要添加到哪里,
labe2 = tk.Label(root, text='周长:')  #
labe3 = tk.Label(root, text='面积:')  #
#把标签布局
labe1.grid(row=0)  # 布置第一行row  行
labe2.grid(row=1)  # 布置第一行
labe3.grid(row=2)  # 布置第一行

#创建3个输入框
shuru1 = tk.Entry(root)   
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
#把输入框布局
shuru1.grid(row=0,column=1)   #columu 列
shuru2.grid(row=1, column=1)  #
shuru3.grid(row=2, column=1)  #

#------------------------

root.mainloop()     #开启循环,让窗口处于显示状态

回复

使用道具 举报

3

主题

73

帖子

1559

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1559
发表于 2022-4-23 19:17:16 | 显示全部楼层
import tkinter as tk

root = tk.Tk()  
root.geometry('600x400')  
root.resizable(1, 1)  
root.title('第一个窗口,名字叫 root')  

def callback():
    r=float(shuru1.get())
    c=2*r*3.14
    m =r**2*3.14
    shuru2.delete("0,end")
    shuru2.insert("insert",c)
    shuru3.delete("0,end")
    shuru3.insert("insert",m)
    print(r,c,m)



but1 = tk.Button(root, text="计算", command=callback)
but1.grid(row=3,column=1)
but2 = tk.Button(root, text='关闭', command=callback)
but2.grid(row=3, column=2)

labe1 = tk.Label(root, text='请输入半径labe1:')  
labe2 = tk.Label(root, text='周长:')
labe3 = tk.Label(root, text='面积:')  

labe1.grid(row=0)
labe2.grid(row=1)
labe3.grid(row=2)

entry1 = tk.Entry(win)
entry2 = tk.Entry(win)
entry3 = tk.Entry(win)

entry1.grid(row=0, column=1)
entry2.grid(row=1, column=1)
entry3.grid(row=2, column=1)

# 显示主窗口
root.mainloop()
回复

使用道具 举报

4

主题

43

帖子

2436

积分

金牌会员

Rank: 6Rank: 6

积分
2436
发表于 2022-4-23 19:32:45 | 显示全部楼层
本帖最后由 周彬浩 于 2022-4-23 19:43 编辑

import tkinter as tk
root = tk.Tk()
root.geometry('600x400')
root.title('计算圆的周长面积')


def callback():
    r = float(shuru1.get())
    c = 2*r*3.14
    m = r**2*3.14
    shuru2.delete('0', 'end')
    shuru2.insert('insert', c)
    shuru3.delete('0', 'end')
    shuru3.insert('insert', m)
    print(r, c, m)

but1 = tk.Button(root, text='计算', command=callback)
but1.grid(row=3, column=1)


labe1 = tk.Label(root, text='请输入半径:')
labe2 = tk.Label(root, text='周长:')
labe3 = tk.Label(root, text='面积:')
labe1.grid(row=0)
labe2.grid(row=1)
labe3.grid(row=2)

shuru1 = tk.Entry(root)
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
shuru1.grid(row=0, column=1)
shuru2.grid(row=1, column=1)
shuru3.grid(row=2, column=1)


root.mainloop()
[Python] 纯文本查看 复制代码
回复

使用道具 举报

10

主题

151

帖子

3021

积分

论坛元老

Rank: 8Rank: 8

积分
3021
发表于 2022-4-23 19:57:33 | 显示全部楼层
老师1000做出来了
[Python] 纯文本查看 复制代码
import tkinter as tk
root = tk.Tk()
root.geometry('600x400')
root.resizable(0,0)
def b():
    a=float(s1.get())
    b=float(s2.get())
    c=a+b
    s3.delete('0','end')
    s3.insert('insert',c)   
but1=tk.Button(root,text='计算',command=b)
but1.grid(row=3,column=1)
l1 = tk.Label(root, text='请输入第一个数labe1:')
l2 = tk.Label(root, text='请输入第二个数:')
l3 = tk.Label(root, text='和:')
l1.grid(row=0)
l2.grid(row=1)
l3.grid(row=2)
s1 = tk.Entry(root)
s2 = tk.Entry(root)
s3 = tk.Entry(root)
s1.grid(row=0,column=1)
s2.grid(row=1,column=1)
s3.grid(row=2,column=1)
root.mainloop()
回复

使用道具 举报

15

主题

96

帖子

2131

积分

金牌会员

Rank: 6Rank: 6

积分
2131
发表于 2022-4-30 18:04:44 | 显示全部楼层
import tkinter as tk    #tk是一个名字
#-----设置窗口--------------
root=tk.Tk()  #创建一个窗口
root.geometry('600x400')  # 设计窗口大写 ,geometry几何
root.resizable(0,0)   #禁止调节窗口大小
root.title('第一个窗口,名字叫 root')  # 修改窗口的标题
#-----写函数--------------

def callback():
    r=float(shuru1.get())  #新建一个变量r,作为半径,获取输入框1的内容
    c=2*r*3.14   #周长
    m=r**2*3.14   #面积
    shuru2.delete('0','end')   #删除输入框2的内容
    shuru2.insert('insert',c)  #输入框2添加c
    shuru3.delete('0','end')
    shuru3.insert('insert',m)
    print(r,c,m)

#------------------------
#设计界面
#------------------------
#创建按钮
# command命令调用callback这个函数,callback是用def创建的函数
but1 = tk.Button(root, text='计算', command=callback)
but1.grid(row=3, column=1)

but2 = tk.Button(root, text='关闭', command=callback)
but2.grid(row=3, column=2)


#创建3个标签
labe1 = tk.Label(root, text='请输入半径labe1:')  # 第一个参数是说明要添加到哪里,
labe2 = tk.Label(root, text='周长:')  #
labe3 = tk.Label(root, text='面积:')  #
#把标签布局
labe1.grid(row=0)  # 布置第一行row  行
labe2.grid(row=1)  # 布置第一行
labe3.grid(row=2)  # 布置第一行

#创建3个输入框
shuru1 = tk.Entry(root)     
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
#把输入框布局
shuru1.grid(row=0,column=1)   #columu 列
shuru2.grid(row=1, column=1)  #
shuru3.grid(row=2, column=1)  #

#------------------------

root.mainloop()     #开启循环,让窗口处于显示状态
回复

使用道具 举报

4

主题

134

帖子

5209

积分

版主

Rank: 7Rank: 7Rank: 7

积分
5209
发表于 2022-4-30 18:07:51 | 显示全部楼层
[Python] 纯文本查看 复制代码
import tkinter as tk
window = tk.Tk()

window.geometry('500x200')
window.title("1001: 【入门】已知一个圆的半径,求解该圆的面积和周长")
window.resizable(0, 0)  


def callback():
    a = eval(entry1.get())
    b = a*3.14
    c = a*a*3.14
    print(b, c)
    entry2.delete(0, 'end')
    entry2.insert('insert', b)
    entry3.delete(0, 'end')
    entry3.insert('insert', c)



labe1 = tk.Label(window, text="请输入半径:")
labe2 = tk.Label(window, text="直径:")
labe3 = tk.Label(window, text="面积:")


labe1.grid(row=0)
labe2.grid(row=1)
labe3.grid(row=2)

entry1 = tk.Entry(window)
entry2 = tk.Entry(window)
entry3 = tk.Entry(window)

entry1.grid(row=0, column=1)
entry2.grid(row=1, column=1)
entry3.grid(row=2, column=1)


but1 = tk.Button(window, text="计算", command=callback)
but1.grid(row=3, column=1)


win.mainloop()

回复

使用道具 举报

6

主题

110

帖子

3308

积分

论坛元老

Rank: 8Rank: 8

积分
3308
发表于 2022-4-30 18:10:07 | 显示全部楼层
import tkinter as tk
root = tk.Tk()
root.geometry('600x400')
root.title('计算圆的周长面积')


def callback():
    r = float(shuru1.get())
    c = 2*r*3.14
    m = r**2*3.14
    shuru2.delete('0', 'end')
    shuru2.insert('insert', c)
    shuru3.delete('0', 'end')
    shuru3.insert('insert', m)
    print(r, c, m)

but1 = tk.Button(root, text='计算', command=callback)
but1.grid(row=3, column=1)


labe1 = tk.Label(root, text='请输入半径:')
labe2 = tk.Label(root, text='周长:')
labe3 = tk.Label(root, text='面积:')
labe1.grid(row=0)
labe2.grid(row=1)
labe3.grid(row=2)

shuru1 = tk.Entry(root)
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
shuru1.grid(row=0, column=1)
shuru2.grid(row=1, column=1)
shuru3.grid(row=2, column=1)


root.mainloop()
回复

使用道具 举报

1

主题

24

帖子

899

积分

高级会员

Rank: 4

积分
899
发表于 2022-4-30 19:10:19 | 显示全部楼层
import tkinter as tk
#设置窗口
root = tk.Tk()
root.geometry('600x400')
root.resizable(0,0)
#---------函数-----------

def b():
    r=float(shuru1.get())#新建变量r,获取输入框1
    c=2*r*3.14
    s=r*r*3.14
    shuru2.delete('0','end')
    shuru2.delete('0','end')
    shuru2.insert('insert',c)
    shuru2.insert('insert',m)



#---------函数-----------
#创建按钮
but1=tk.Button(root,text='计算',command=b)
but1.grid(row=3,column=1)
#创建标签

labe1 = tk.Label(root, text='请输入半径labe1:')
labe2 = tk.Label(root, text='周长:')
labe3 = tk.Label(root, text='面积:')
#标签布局
labe1.grid(row=0)#第一个参数要标注添加到哪里
labe2.grid(row=1)
labe3.grid(row=2)
#创建3个输入框
shuru1 = tk.Entry(root)
shuru2 = tk.Entry(root)
shuru3 = tk.Entry(root)
#输入框布局
shuru1.grid(row,column=1)#column 列
shuru2.grid(row,column=1)
shuru3.grid(row,column=1)


root.maimloop()
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 中文实名注册

本版积分规则

小黑屋|东台市机器人学会 ( 苏ICP备2021035350号-1;苏ICP备2021035350号-2;苏ICP备2021035350号-3 )

GMT+8, 2024-4-20 16:31 , Processed in 0.044879 second(s), 28 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表