利用tkinter改變下拉列表(Combobox)的選項值
tkinter改變下拉列表(Combobox)的選項值
定義下拉列表:
# 此處省略父容器的定義 ... ?? # 定義下拉列表選項值集合 self.Combo5List = ['0', '1', '2', '3'] # 定義下拉列表Combobox self.Combo5 = Combobox(self.Frame1, values=self.Combo5List, font=('宋體', 9), state='readonly') # 放置控件 self.Combo5.place(relx=0.39, rely=0.636, relwidth=0.063, relheight=0.08) # 設置下拉列表的默認值 self.Combo5.set(self.Combo5List[0]) 改變Combobox的選項值: # 新選項值的集合 index = ["a", "b", "c", "d"] # 給Combobox的選項重新賦值 self.Combo5["value"] = index # 設置默認值 self.Combo5.set(index[2])
獲取Combobox選中項的值:
self.Combo5.get()
Tkinter Combobox控件
Combobox控件
通過前面內容的介紹我們知道 Listbox 是一個供用戶從列表項中選擇相應條目的控件。但在有些情況下,比如列表的項目過多時,若使用列表控件,列出所有選項就會顯得界面格外臃腫,這時就需要用到 Combobox 控件,也就是下拉菜單控件(或稱復合框),該控件是列表控件的改進版,具有更加靈活的界面,因此其應用場景相比于前者要更加廣泛。
不過需要注意的是 Combobox 并不包含在 tkinter 模塊中,而是包含在tkinter.ttk子模塊中,因此若想使用 Combobox 控件,需要使用下面的導包方式:
from tkinter import ttk
語法格式:
cbox=Combobox(窗口對象,[參數(shù)列表])
Combobox 控件在形式雖然與列表控件存在不同,但它們的本質是相同,因此屬性和方法是通用的。
對于 Combobox 控件而言,它常用的方法有兩個,分別是 get() 和 current(),前者表示獲取當前選中選項的內容,后者表示獲取選中選項的索引值:
import tkinter from tkinter import ttk # 導入ttk模塊,下拉菜單控件位于ttk子模塊中 win = tkinter.Tk() win.geometry('400x250') win.resizable(0,0) cbox = ttk.Combobox(win) # 使用 grid() 來控制控件的位置 cbox.grid(row = 1, sticky="NW") # 設置下拉菜單中的值 cbox['value'] = ('C','C#','Go','Python','Java') #通過 current() 設置下拉菜單選項的默認值 cbox.current(3) # 編寫回調函數(shù),綁定執(zhí)行事件,向文本插入選中文本 def func(event): text.insert('insert',cbox.get()+"\n") # 綁定下拉菜單事件 cbox.bind("<<ComboboxSelected>>",func) text = tkinter.Text(win) text.grid(pady = 5) win.mainloop()
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python使用Nocalhost并開啟debug調試的方法
Nocalhost是一種開發(fā)者工具,支持針對Kubernetes應用程序進行調試和部署,這篇文章主要介紹了Python怎么使用Nocalhost并開啟debug,需要的朋友可以參考下2023-04-04Linux上安裝Python的PIL和Pillow庫處理圖片的實例教程
這里我們來看一下在Linux上安裝Python的PIL和Pillow庫處理圖片的實例教程,包括一個使用Pillow庫實現(xiàn)批量轉換圖片的例子:2016-06-06使用Python實現(xiàn)監(jiān)控進程是否有病毒
這篇文章主要為大家詳細介紹了如何使用Python實現(xiàn)監(jiān)控進程是否有病毒,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-02-02python smtplib模塊自動收發(fā)郵件功能(一)
這篇文章主要為大家詳細介紹了python smtplib模塊自動收發(fā)郵件功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-05-05Python操作excel的方法總結(xlrd、xlwt、openpyxl)
這篇文章主要給大家介紹了關于Python操作excel的一些方法,其中包括xlrd、xlwt、openpyxl的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Python具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09