我试图将按钮的前景色(由用户单击更改)的状态保存到.txt文件中,以便在下次运行时自动重新应用所述前景色。这是我拥有的代码... toggle_color可以完美地工作,它也可以将颜色状态写入.txt文件。但是,它不会在启动时自动更改颜色。意思是,我可能在最后一部分弄糟了。我做错了什么?
编辑:忘记调用.read()。但这toggle_color(colors = ['white', '#0055C4'])不是更改先前定义的公认方法。因此,我将如何更改toggle_color的colors变量?
def toggle_color(last=[0]): #this is what toggles the fg color of the button
colors = ['#0055C4', 'white']
color = colors[last[0]]
last[0] = (last[0] + 1) % 2
savepass.config(fg=color)
with open('loaderstate.txt', 'w') as loader_file:
loader_file.write(savepass.cget('fg'))
savepasspic = PhotoImage(file="RememberMeBackground.png")
savepass=Button(root, font=('Arial Black',10),image=savepasspic, text=" remember me", compound=CENTER, command=toggle_color, activeforeground="#0055C4", activebackground="#303030", relief=GROOVE)
savepass.config(borderwidth=0, highlightthickness=0, width=120, height=18, fg='white', bg="grey")
savepass.place(x=105, y=287)
def blueoverall(): #changes the fg color of the button, and reverses toggle_color order
savepass.config(fg='#0055C4')
toggle_color(colors = ['white', '#0055C4'])
with open('loaderstate.txt', 'r') as loader_file: #should run automatically on startup and determine color of button fg
if loader_file.read == '#0055C4':
blueoverall()
if loader_file.read == 'white':
savepass.config(fg='white')
相关分类