So far, all the buttons and labels in examples have been rendered with a default look-and-feel that is standard for the underlying platform. That usually means gray on Windows, with my machine’s color scheme. Tkinter widgets can be made to look arbitrarily different, though, using a handful of widget and packer options.
Because I generally can’t resist the temptation to customize widgets in examples, I want to cover this topic early on the tour. Example 7-1 introduces some of the configuration options available in Tkinter.
Example 7-1. PP2E\Gui\Tour\config-label.py
from Tkinter import * root = Tk() labelfont = ('times', 20, 'bold') # family, size, style widget = Label(root, text='Hello config world') widget.config(bg='black', fg='yellow') # yellow text on black label widget.config(font=labelfont) # use a larger font widget.config(height=3, width=20) # initial size: lines,chars widget.pack(expand=YES, fill=BOTH) root.mainloop()
Remember, we can call a widget’s
method to reset its options at any time, instead of passing them all
to the object’s constructor. Here, we use it to set options
that produce the window in Figure 7-1.
Figure 7-1. A custom label appearance
This may not be completely obvious unless you run this script on a real computer (alas, I can’t show it in color here), but the label’s text here shows up in yellow on a black background, ...