简短的故事就是我正在运行一个过程,它是通过所述过程运行的,我希望文本在经过时从黑色变为红色。现在,我试图这样做的方式来自课外。
如果我能引起你对def C()的注意: 一旦程序从开始按钮开始,变量start就设置为1.我希望消息statusStartTk下的Application.createWidgets()中的文本变为红色。我正在尝试使用Application.statusStartTk.config在C()中执行此操作(fg =' red')
现在,对于那些我出错的聪明家伙来说,这可能是显而易见的,并且会很高兴能够做对。我花了几个小时尝试不同的事情并且搜索无济于事。你可能会看到我在哪里发表了评论,并指出了我在尝试的事情。
此外我还想说,我很感谢你们到目前为止回复的非常快速和有用的回复,所以再次感谢你,并期待。
无论如何,这里是代码:
import time
from tkinter import *
import tkinter as Tk
import tkinter
#sets up Tkinter GuI
root = Tk.Tk()
#Set Adjustable Variables for GUI
startText=StringVar()
startText.set("Start Brew!")
def a():
#print('a')
print('start = ', start)
def b():
print('b')
def c(): #GUI ASSISTANCE STATUS WINDOW
print('c')
if start==1:
Application.statusStartTk.config(fg='red')
def main():
a()
b()
c()
class Application(Tk.Frame):
def __init__(self, master=None):
Tk.Frame.__init__(self, master)
self.createWidgets()
def createWidgets(self):
#Set start buttons and sink and disable if brew started
self.startButton = Tk.Button(root, textvariable=startText, command=Application.startBrew)
self.startButton.place(x=902,y=60)
#Plant Status List
statusTitle = "Plant Status Update:"
statusTitleTk = Message(root,width=200,font=("Tk Default Font",16), text=statusTitle)
statusTitleTk.place(x=1090,y=40)
statusStart = "- Brew Started"
statusStartTk = Message(root,width=200, text=statusStart)
statusStartTk.place(x=1100,y=70)
self.onUpdate()
def startBrew():
print('brew has started')
global start,startButton
start=1
startText.set("Brew Started")
Application()
def onUpdate(self):
root.update_idletasks()
main()
#str(variable1.get())
self.after(5, self.onUpdate)
app = Application(master=root)
root.mainloop()