日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

利用tkinter改變下拉列表(Combobox)的選項值_python

作者:烏拉隊長 ? 更新時間: 2023-03-22 編程語言

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(窗口對象,[參數列表])

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)
# 編寫回調函數,綁定執行事件,向文本插入選中文本
def func(event):
    text.insert('insert',cbox.get()+"\n")
# 綁定下拉菜單事件
cbox.bind("<<ComboboxSelected>>",func)
text = tkinter.Text(win)
text.grid(pady = 5)
win.mainloop()

總結

原文鏈接:https://blog.csdn.net/asdfg6541/article/details/103971531

欄目分類
最近更新