您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“如何使用Scale控件控制標(biāo)簽字體的大小和顏色”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
數(shù)值范圍控件Scale可以用來(lái)調(diào)整數(shù)值的大小。
首先準(zhǔn)備各種信息列表并生成字體。
#font setting.
font_size = 12
font_family = ['Times','Arial', 'Roma']
font_weight = ['bold', 'normal']
font_slant = ['italic','roman','normal']
# create font
label_font = Font(family=font_family[0], size=font_size,
weight=font_weight[0], slant=font_slant[0])
使用上面生成的字體構(gòu)建一個(gè)演示對(duì)象標(biāo)簽:
# create a label to display message.label = Label(root, text='ScaleTest', font=label_font, foreground="#000000",)label.grid(row=0, column=0, columnspan=4, sticky=E + W)
構(gòu)建切換下劃線和刪除線的Checkbutton控件:
#toggle underline.def toggle_underline(): under_line = label_font.cget('underline') label_font.config(underline=not under_line)# create check button.ub = Checkbutton(root,text="Underline",command=toggle_underline)ub.grid(row=1, column=0, columnspan=2)#toggle overstrike.def toggle_overstrike(): over_strike = label_font.cget('overstrike') label_font.config(overstrike=not over_strike)#create check button.ob = Checkbutton(root,text="Overstrike",command=toggle_overstrike)ob.grid(row=1, column=1, columnspan=2)
構(gòu)建調(diào)整字體和粗細(xì)的Spinbox控件。?????
#label of readonly spinbox.
Label(root, text='Family').grid(row=2,column=0, sticky=E)
def family_changed():
label_font.config(family=fb.get())
# create a value spinbox.
fb = Spinbox(root, values=font_family, wrap=True, state='readonly',
command=family_changed)
fb.grid(row=2, column=1, columnspan=2, sticky=W+E)
#label of weight spinbox.
Label(root, text='Weight').grid(row=3,column=0, sticky=E)
def weight_changed():
label_font.config(weight=wb.get())
# create a weight spinbox.
wb = Spinbox(root, values=font_weight, wrap=True, state='readonly',
command=weight_changed)
wb.grid(row=3, column=1, columnspan=3, sticky=W+E)
到這里為止都是之前說(shuō)明過(guò)的內(nèi)容,接下來(lái)是主角Scale控件。
# create a lable of size scale.
Label(root, text='Size').grid(row=4,column=0, sticky=E)
def scale_changed(value):
label_font.config(size=value)
# create font size scale.
fs = Scale(root, relief=GROOVE, orient=HORIZONTAL,
from_=10, to_=32, resolution=1,
command=scale_changed)
fs.grid(row=4, column=1, columnspan=3, sticky=W+E)
處理拖動(dòng)事件的函數(shù)有一個(gè)參數(shù)用于傳遞Scale控件的當(dāng)前值。有了這個(gè)參數(shù),就不用另外從控件處取得了。這個(gè)處理用來(lái)設(shè)定字體大小,結(jié)果會(huì)直接反映到標(biāo)簽控件上。
# create a lable of gray scale.
Label(root, text='Gray').grid(row=5,column=0, sticky=E)
def gray_changed(value):
value = '{:02x}'.format(int(value))
value = '#'+value+value+value
label.config(foreground=value)
# create gray scale.
cs = Scale(root, relief=GROOVE, orient=HORIZONTAL,
from_=0, to_=255, resolution=1,
command=gray_changed)
cs.grid(row=5, column=1, columnspan=3, sticky=W+E)
調(diào)整顏色的處理和字體大小基本一樣,只是生成顏色時(shí)使用了字符串格式化和合并。
“如何使用Scale控件控制標(biāo)簽字體的大小和顏色”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。