【发布时间】:2020-01-14 23:07:56
【问题描述】:
如果用户输入“b”,我试图让框架的颜色变为黑色,如果用户输入“g”,则变为绿色。这就是我到目前为止所拥有的
谢谢。
from tkinter import *
class Main:
def __init__(self):
root = Tk()
root.geometry("250x300-1200-400")
frame = Frame(root)
# input field stored
self.input_a = StringVar()
# input field
input_color_changer = Entry(root, textvariable=self.input_a)
input_color_changer.grid(row=0, column=0)
button = Button(root, text="Run", command=self.ColorChanger)
button.grid(row=1, column=2)
root.mainloop()
def ColorChanger(self):
input_b = self.input_a.get()
if input_b == "b":
print("BLACK") # CHANGE COLOR OF FRAME TO BLACK
if input_b == "g":
print("GREEN") # CHANGE COLOR OF FRAME TO GREEN etc...
Main()
【问题讨论】:
-
是什么阻止你改变框架的颜色?
-
你必须使用
self.和self.frame["bg"] = "black",但Frame是空的(你把所有的小部件直接放到root)所以它没有大小,你不会看到不同的背景。
标签: python tkinter colors grid frame