溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python的Ttk庫怎么用

發(fā)布時間:2022-01-13 15:41:43 來源:億速云 閱讀:342 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“Python的Ttk庫怎么用”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Python的Ttk庫怎么用”吧!

本文說明Ttk庫中菜單按鈕Menubutton、進(jìn)度條Progressbar和組合列表框Combobox的用法。

首先是菜單按鈕Menubutton。代碼中只是簡單構(gòu)建了一個退出菜單。

menu = Menubutton(root, text="File")menu.grid(row=0, column=0, sticky=W)file_menu = Menu(menu, tearoff=0)menu.config(menu=file_menu)file_menu.add_command(label="Exit", command=exit)

接下來是進(jìn)度條控件Progressbar。

p_value = IntVar()p_value.set(0)progress = Progressbar(root, maximum=100, variable=p_value)progress.grid(row=1, column=0, columnspan=3, sticky='ew')
def on_timer():    if p_value.get() < progress.cget('maximum'):        p_value.set(p_value.get() + 1)    else:        timer.stop()
timer=Timer(root, 100, on_timer)

進(jìn)度條的最大值固定為100,值變量指定為p_value。當(dāng)p_value的值發(fā)生改變時,進(jìn)度表也會隨之更新,反之亦然。

on_timer的內(nèi)容是每次將p_value的值加1,直至Progressbar的最大值為止。on_timer會在被定時器timer周期性調(diào)用。

再往下是Combobox關(guān)聯(lián)代碼:

c_var = StringVar()c_var.set(str(timer.get_timer()))def t_changed(*args):    timer.set_timer(int(c_var.get()))c_var.trace_variable('w', t_changed)
time_values=['50', '100', '200']c_box = Combobox(root, values=time_values, textvariable=c_var, state='readonly')c_box.grid(row=2, column=0)

首先構(gòu)造一個字符串變量并將其初始化為定時器的定時時長。接下來為這個變量設(shè)定一個監(jiān)視函數(shù),以便根據(jù)變量值修改定時器的定時時長。最后構(gòu)建一個Combobox對象。這樣一來,當(dāng)用戶選擇不同的數(shù)值時,該數(shù)值會通過c_var變量間接設(shè)定給定制器timer的定時時長。

開始和停止按鈕就簡單了:

start_btn = Button(root, text='Start', command=timer.start)start_btn.grid(row=2, column=1)
def stop_timer():    timer.stop()    p_value.set(0)stop_btn = Button(root, text='Stop', command=stop_timer)stop_btn.grid(row=2, column=2)

感謝各位的閱讀,以上就是“Python的Ttk庫怎么用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Python的Ttk庫怎么用這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI