Tkinter 随机颜色 ?
from tkinter import *
import random
root=Tk()
colors="%d.:06x"%(random.randint(0,0xFFFFFF))
m=["A","B","C"]
for j in m:
Button(root,
text=j,
font="方正祥隶简体 23 bold",
foreground=colors,
background="bisque",
relief="sunken",
borderwidth=9,
overrelief="groove").pack()
mainloop()
随 机 颜 色 怎 么 出 不 来 呢 ? 你好!你的代码中随机颜色的生成部分有误,导致颜色无法正常显示。
问题出在这一行:
colors="%d.:06x"%(random.randint(0,0xFFFFFF))
这里应该使用正确的字符串格式化来生成十六进制颜色代码。另外,变量 m 没有定义,所以循环不会执行。
修正方法:
1. 使用 "#%06x" 来生成随机颜色。
2. 定义 m 为一个可迭代对象,例如字符串或列表。
以下是修正后的完整代码示例:
from tkinter import *
import random
root = Tk()
m = "ABC"# 这里假设 m 是一个字符串,用于按钮文本
for j in m:
color = "#%06x" % random.randint(0, 0xFFFFFF)# 正确生成随机颜色
Button(root,
text=j,
font="方正祥隶简体 23 bold",
foreground=color,# 应用随机颜色
background="bisque",
relief="sunken",
borderwidth=9,
overrelief="groove").pack()
mainloop()
这样,每个按钮的前景色都会随机变化。如果你希望所有按钮使用相同的随机颜色,可以将颜色生成移到循环外部。
如果还有其他问题,欢迎继续问!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 {:10_249:}
页:
[1]