【Python GUI tkinterサンプル】ttk.Comboboxの値を取得しコンソールに出力する
使用するオプション
- textvariable
使い方
#選択肢リスト valuelist=["ぶどう","バナナ","もも","いちご"] #Widget変数 variable=StringVar() ttk.Combobox(values=valuelist,textvariable=variable)
ttk.ComboboxのtextvariableオプションにWidget変数を設定することで選択された値を取得することが可能になる
値を取得するときは下記のようにWidget変数から取得するか、Widgetから経由して取得する。
#選択肢リスト valuelist=["ぶどう","バナナ","もも","いちご"] #Widget変数 variable=StringVar() combo=ttk.Combobox(values=valuelist,textvariable=variable) #値の取得 variable.get() combo.get()
サンプル画像
サンプルコード実行
選択肢から1つ選択
printを押下しコンソールを確認
サンプルコード
from tkinter import *
import tkinter.ttk as ttk
class ComboboxSampleVariableOption(ttk.Frame):
def __init__(self, master):
super().__init__(master)
self.variable = StringVar()
self.create_widgets()
self.pack()
def create_widgets(self):
valuelist=["ぶどう","バナナ","もも","いちご"]
self.combo = ttk.Combobox(self,values=valuelist,textvariable=self.variable)
self.combo.pack()
button = ttk.Button(self,text="print",command= self.printValue)
button.pack()
def printValue(self):
print(self.variable.get())
print(self.combo.get())
if __name__ == '__main__':
master = Tk()
master.title("ComboboxSampleVariableOption")
master.geometry("350x200")
ComboboxSampleVariableOption(master)
master.mainloop()