鱼C论坛

 找回密码
 立即注册
查看: 609|回复: 9

[已解决]tkinter,无法进行计算,但不报错

[复制链接]
发表于 2020-4-11 15:49:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 猪猪虾 于 2020-4-11 16:41 编辑

报错:TypeError: test_1() missing 1 required positional argument: 'content'

  1. #简单计算器
  2. from tkinter import *

  3. root = Tk()

  4. v1=StringVar()
  5. v2=StringVar()


  6. def test(content):
  7.     if content.isdigit() and len(code)==2:
  8.        me=e1.get()+e2.get()
  9.        w1= Message(root, text="第一个数+第二个数=")
  10.        w1.grid(row=2,column=0,padx=0,pady=0)
  11.        w2= Message(root, text=me, width=100)
  12.        w2.grid(row=3,column=0,padx=20,pady=20)
  13.        return True
  14.     else:
  15.         print("错误!")
  16.         print(content)
  17.         return False

  18. group=LabelFrame(root,text="简易计算器",padx=10,pady=10)
  19. group.grid(padx=10, pady=10)

  20. Label(group,text="第一个数:").grid(row=0,column=0)
  21. Label(group,text="第二个数:").grid(row=1,column=0)

  22. testCMD = root.register(test)
  23. e1 = Entry(group,textvariable=v1, validate="focusout", validatecommand=(testCMD, '%P'))
  24. e2 = Entry(group,textvariable=v2,validate="focusout", validatecommand=(testCMD, '%P'))
  25. e1.grid(row=0,column=1)
  26. e2.grid(row=1,column=1)

  27. mainloop()

复制代码
最佳答案
2020-4-11 16:33:27
错误提示不够明白吗?
39行那里是不传参数的,但是你的test_1需要参数
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-4-11 16:33:27 | 显示全部楼层    本楼为最佳答案   
错误提示不够明白吗?
39行那里是不传参数的,但是你的test_1需要参数
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-11 16:36:03 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-4-11 16:33
错误提示不够明白吗?
39行那里是不传参数的,但是你的test_1需要参数

对,我一下子没转过来,我想问的是,Entry动态判断输入并传递相应的值,现在我两个输入框的值要传递到同一个函数进行计算,要怎没办
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-11 16:38:23 | 显示全部楼层
猪猪虾 发表于 2020-4-11 16:36
对,我一下子没转过来,我想问的是,Entry动态判断输入并传递相应的值,现在我两个输入框的值要传递到同 ...

14行的 me_1 是个什么
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-11 16:40:40 | 显示全部楼层

那个删掉就好,我之前尝试定义两个函数来分别接收,然后再进行计算,但是调用def test(content):必须往里面传参数,我就不知道咋弄了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-11 16:43:27 | 显示全部楼层
猪猪虾 发表于 2020-4-11 16:40
那个删掉就好,我之前尝试定义两个函数来分别接收,然后再进行计算,但是调用def test(content):必须往里 ...

本来的content是个什么呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-11 16:56:22 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-4-11 16:43
本来的content是个什么呢

'%P'
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-11 17:01:58 | 显示全部楼层

这是个啥……
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-11 17:04:10 | 显示全部楼层

显示当前输入框的值
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-11 17:04:43 | 显示全部楼层

我改出来啦,谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-12 21:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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