鱼C论坛

 找回密码
 立即注册
查看: 1884|回复: 4

运行的时候弹出的提示must be cancel, idle, info, or an integer什么意思

[复制链接]
发表于 2020-3-25 22:50:37 | 显示全部楼层 |阅读模式

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

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

x
代码运行的时候弹出了:_tkinter.TclError: bad argument "": must be cancel, idle, info, or an integer
其中的cancel,idle,info三种是什么形式的内容,应该用什么形式写出来
刚自学python没多久,对这些概念不清楚,有没有包含这类内容的书籍可否推荐一下,拜托了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-25 22:54:12 | 显示全部楼层
把代码贴出来看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-25 23:11:20 | 显示全部楼层
XiaoPaiShen 发表于 2020-3-25 22:54
把代码贴出来看看
root.after(' ', yes_whatever)
我知道这个逗号前面填个整数可以正常运行,但是我还想知道提示里的那三种形式应该填什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-25 23:15:22 | 显示全部楼层
泓霁全是问题 发表于 2020-3-25 23:11
我知道这个逗号前面填个整数可以正常运行,但是我还想知道提示里的那三种形式应该填什么

要贴完整代码,只有一句没法运行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-25 23:27:27 | 显示全部楼层
XiaoPaiShen 发表于 2020-3-25 23:15
要贴完整代码,只有一句没法运行
import tkinter as tk
import time
import random


def whatever():
        shijian = time.clock()
        neirong = '已运行:{:.0f}秒'.format(shijian)
        wucha = round(shijian, 3) - round(shijian)
        dengdai = int((1 - wucha) * 1000)
        shijian_weizhi.configure(text=neirong)
        shijian_weizhi.after(dengdai, whatever)


def yes_whatever():
        global x, y, z, b
        a = random.uniform(0.5, 3.5)
        if a < 2:
                x += random.uniform(0.1, 1)
                z = x / y
        if z <= 1:
                neirong = '已加载:{:.2f}%'.format(z*100)
        else:
                neirong = '已加载:100%'
        jincheng_weizhi.config(text=neirong)
        jincheng_weizhi.after(' ', yes_whatever)
        if b:
                exit()
        if z > 1:
                b = True


chuangkou = tk.Tk()
chuangkou.geometry('720x480')
shijian_weizhi = tk.Message(chuangkou)
shijian_weizhi.pack()

jincheng_weizhi = tk.Label(chuangkou, text='啥都没有')
jincheng_weizhi.place(x=100, y=100)

x = 0
y = 10
z = x / y
b = False

whatever()
yes_whatever()
chuangkou.mainloop()
我知道改成下面这样可以运行,但我想知道报错里那几种形式怎么改
vimport tkinter as tk
import time
import random


def whatever():
        shijian = time.clock()
        neirong = '已运行:{:.0f}秒'.format(shijian)
        wucha = round(shijian, 3) - round(shijian)
        dengdai = int((1 - wucha) * 1000)
        shijian_weizhi.configure(text=neirong)
        shijian_weizhi.after(dengdai, whatever)


def yes_whatever():
        global x, y, z, b
        a = random.uniform(0.5, 3.5)
        if a < 2:
                x += random.uniform(0.1, 1)
                z = x / y
        if z <= 1:
                neirong = '已加载:{:.2f}%'.format(z*100)
        else:
                neirong = '已加载:100%'
        jincheng_weizhi.config(text=neirong)
        jincheng_weizhi.after(500, yes_whatever)
        if b:
                exit()
        if z > 1:
                b = True


chuangkou = tk.Tk()
chuangkou.geometry('720x480')
shijian_weizhi = tk.Message(chuangkou)
shijian_weizhi.pack()

jincheng_weizhi = tk.Label(chuangkou, text='啥都没有')
jincheng_weizhi.place(x=100, y=100)

x = 0
y = 10
z = x / y
b = False

whatever()
yes_whatever()
chuangkou.mainloop()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 11:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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