鱼C论坛

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

[已解决]Tkinter 按钮底色 红-绿 交替闪烁,怎么实现 ?

[复制链接]
发表于 2025-8-23 10:00:28 | 显示全部楼层 |阅读模式

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

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

x

  1. from tkinter import *
  2. root=Tk()
  3. root.geometry("234x123")
  4. root.option_add("*width","18")
  5. root.option_add("*height","3")
  6. b=Button(root,text="大暴雨",background="red")
  7. b.pack(expand=True)
  8. def a():
  9.       b.config(background="green")
  10. root.after(3000,a)
  11. mainloop()
复制代码


每隔3s ,红-绿-红-绿-红.......
最佳答案
2025-8-23 13:44:25
from tkinter import *
root=Tk()
root.geometry("234x123")
root.option_add("*width","18")
root.option_add("*height","3")
b=Button(root,text="大暴雨",background="red")
b.pack(expand=True)
is_red = True
def a():
      global is_red
      if is_red:
            b.config(bg="green")
            is_red = False
      else:
            b.config(bg="red")
            is_red = True

      root.after(3000, a)

a()
mainloop()
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2025-8-23 19:37:06 | 显示全部楼层


报错呀!UnboundLocalError: cannot access local variable 'n' where it is not associated with a value
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-8-23 19:45:43 | 显示全部楼层
本帖最后由 dragov 于 2025-8-23 19:47 编辑
ydwb 发表于 2025-8-23 13:44
from tkinter import *
root=Tk()
root.geometry("234x123")



嗯,这个程序还不错的 !
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-8-23 19:50:21 | 显示全部楼层


您给的这个程序需要进行修改,我是这样修改的,然后就行了.

  1. from tkinter import *
  2. root=Tk()
  3. root.geometry("234x123")
  4. root.option_add("*width","18")
  5. root.option_add("*height","3")
  6. b=Button(root,text="大暴雨",background="red")
  7. b.pack(expand=True)
  8. bg=["green", "red"]
  9. n=0
  10. def a():
  11.       global n
  12.       b.config(background=bg[n])
  13.       n= not n
  14. root.after(3000,a)
  15. mainloop()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 04:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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