An example of the most common widget options.
23from tkinter
import font
24from random
import randrange
26COLORS = (
"white",
"green",
"blue",
"yellow",
"pink",
"grey",
"black",
27 "cyan",
"red",
"orange",
"gold",
"magenta",
"purple")
28RELIEFS = (
"sunken",
"flat",
"raised",
"groove",
"ridge",
"solid")
29ANCHORS = (
"n",
"e",
"nw",
"se",
"s",
"sw",
"w",
"ne",
"center")
30JUSTIFIES = (
"left",
"center",
"right")
31CURSORS = (
"arrow",
"circle",
"clock",
"cross",
"dotbox",
"exchange",
32 "fleur",
"heart",
"man",
"mouse",
"pirate",
"plus",
33 "shuttle",
"sizing",
"spider",
"spraycan",
"target",
34 "tcross",
"trek",
"watch")
38def change_bgcolor(event):
39 labSample.config(bcolor=spbBgcolor.get_content())
42def change_fgcolor(event):
43 labSample.config(fcolor=spbFgcolor.get_content())
46def change_relief(event):
47 labSample.config(relief=spbRelief.get_content())
50def change_border(event):
51 labSample.config(borderwidth=int(spbBorder.get_content()))
54def change_anchor(event):
55 labSample.config(anchor=spbAnchor.get_content())
58def change_justify(event):
59 labSample.config(justify=spbJustify.get_content())
62def change_font(event):
63 fsize = randrange(12, 25)
64 labSample.config(font=(spbFont.get_content(), fsize))
66def change_cursor(event):
67 labSample.config(cursor=spbCursor.get_content())
71winMain = Ntk.Main(200, 180, 640, 480,
"Widget attributes")
73rfr1 = Ntk.RowFrame(winMain, 0, 0,
"fill",
"fill")
76labSample = Ntk.Label(rfr1, 0, 0,
"fill",
"fill", pad=10,
77 content=
"This is a sample, because\nit demonstrates widget options")
79FONTS = font.families()[:min(15, len(font.families()))]
81rfr1.config_children(Ntk.Label, bcolor=
"#E0F0C0", relief=
"solid", border=1)
82rfr1.config_children(Ntk.Spinbox, rbcolor=
"#A0C0D0", relief=
"ridge", state=
"readonly")
87labBgcolor = Ntk.Label(rfr1, 0, 0,
"20%",
"fill", pad=(10,2,2,2), content=
"bcolor")
88spbBgcolor = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=COLORS,
89 command=change_bgcolor)
90labFgcolor = Ntk.Label(rfr1,
"pack", 0,
"20%",
"fill", pad=(10,2,2,2), content=
"fcolor")
91spbFgcolor = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=COLORS,
92 command=change_fgcolor)
95labRelief = Ntk.Label(rfr1, 0, 0,
"20%",
"fill", pad=(10,2,2,2), content=
"relief")
96spbRelief = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=RELIEFS,
97 command=change_relief)
98labBorder = Ntk.Label(rfr1,
"pack", 0,
"20%",
"fill", pad=(10,2,2,2), content=
"border")
99spbBorder = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=(0, 6, 1),
100 command=change_border)
103labAnchor = Ntk.Label(rfr1, 0, 0,
"20%",
"fill", pad=(10,2,2,2), content=
"anchor")
104spbAnchor = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=ANCHORS,
105 command=change_anchor)
106labJustify = Ntk.Label(rfr1,
"pack", 0,
"20%",
"fill", pad=(10,2,2,2), content=
"justify")
107spbJustify = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=JUSTIFIES,
108 command=change_justify)
111labFont = Ntk.Label(rfr1, 0, 0,
"20%",
"fill", pad=(10,2,2,2), content=
"font")
112spbFont = Ntk.Spinbox(rfr1,
"pack", 0,
"30%",
"fill", pad=(2,2,10,2), limits=FONTS,
114labCursor = Ntk.Label(rfr1,
"pack", 0,
"20%",
"fill", pad=(10,2,2,2), content=
"cursor")
115spbCursor = Ntk.Spinbox(rfr1,
"pack",
"pack",
"30%",
"fill", pad=(2,2,10,2), limits=CURSORS,
116 command=change_cursor)
121spbBorder.set_content(
"2")
123spbFgcolor.invoke(
"buttonup")