【发布时间】:2021-12-03 02:04:16
【问题描述】:
Python:我现在需要为我的编码类使用颜色选择器。但是,该按钮使得在我的代码中合并变得非常困难。无论如何在Python中打开一个没有按钮的颜色选择器?我需要设置一个等于颜色选择器位置的变量。这是我现在的代码。
【问题讨论】:
-
什么代码?你还没有添加任何东西。还有什么事件应该触发颜色选择器的打开?
标签: python tkinter colors jcolorchooser
Python:我现在需要为我的编码类使用颜色选择器。但是,该按钮使得在我的代码中合并变得非常困难。无论如何在Python中打开一个没有按钮的颜色选择器?我需要设置一个等于颜色选择器位置的变量。这是我现在的代码。
【问题讨论】:
标签: python tkinter colors jcolorchooser
不太清楚你想如何在没有按钮或任何其他小部件的情况下调用askcolor()。
我会建议简单的解决方案,当按钮的命令绑定到调用askcolour() 对话框并在选择值时为变量分配颜色的函数时。
from tkinter import Tk, Button, Canvas
from tkinter.colorchooser import askcolor
class AskColor:
def __init__(self, master):
self.master = master
self.colour = (None,None)
self.button = Button(self.master, text='Colour', command=self.button_command)
self.indicator_creation()
self.button.pack()
def indicator_creation(self):
self.indicator = Canvas(self.master)
self.oval = self.indicator.create_oval(50, 50, 100, 100)
self.indicator.itemconfig(self.oval, fill=self.colour[1])
self.indicator.pack()
def button_command(self):
chosen_colour = askcolor()
if chosen_colour != (None,None):
self.colour = chosen_colour
self.indicator.itemconfig(self.oval,fill=self.colour[1])
if __name__ == '__main__':
window = Tk()
AskColor(window)
window.mainloop()
【讨论】: