You are currently viewing Виджет Combobox в tkinter | Python

Виджет Combobox в tkinter | Python

Python предоставляет множество типов графического интерфейса (графического пользовательского интерфейса), таких как PyQt, Tkinter, Kivy, wxPython и PySide. Среди них tkinter наиболее часто используемый графический модуль в Python, поскольку он прост и понятен. Слово Tkinter происходит от интерфейса Tk. Модуль tkinter доступен в стандартной библиотеке Python, которую необходимо импортировать при написании программы на Python для создания графического интерфейса.

Примечание: Tkinter(capital T) отличается от tkinter. Tkinter используется в Python2.x и изменяется на tkinter в Python.3x.

Выпадающее окно — это комбинация списка и поля ввода. Это один из виджетов Tkinter, где он содержит стрелку вниз для выбора из списка опций. Это помогает пользователям выбирать в соответствии со списком отображаемых параметров. Когда пользователь нажимает на стрелку раскрывающегося списка в поле ввода, внизу поля ввода отображается всплывающее окно с прокручиваемым списком. Выбранный параметр будет отображаться в поле ввода только в том случае, если выбран параметр из списка.

Синтаксис:

combobox = ttk.Combobox(master, option=value, ...)

Пример 1: 

Виджет комбинации без установки значения по умолчанию.

# python program demonstrating
# Combobox widget using tkinter


import tkinter as tk
from tkinter import ttk

# Creating tkinter window
window = tk.Tk()
window.title('Combobox')
window.geometry('500x250')

# label text for title
ttk.Label(window, text = "GFG Combobox Widget",
		background = 'green', foreground ="white",
		font = ("Times New Roman", 15)).grid(row = 0, column = 1)

# label
ttk.Label(window, text = "Select the Month :",
		font = ("Times New Roman", 10)).grid(column = 0,
		row = 5, padx = 10, pady = 25)

# Combobox creation
n = tk.StringVar()
monthchoosen = ttk.Combobox(window, width = 27, textvariable = n)

# Adding combobox drop down list
monthchoosen['values'] = (' January',
						' February',
						' March',
						' April',
						' May',
						' June',
						' July',
						' August',
						' September',
						' October',
						' November',
						' December')

monthchoosen.grid(column = 1, row = 5)
monthchoosen.current()
window.mainloop()

Выход:

Пример 2: 

Выпадающий список с начальными значениями по умолчанию.

Мы также можем установить начальные значения по умолчанию в виджете «Выпадающее меню», как показано в приведенном ниже примере кода.

import tkinter as tk
from tkinter import ttk

# Creating tkinter window
window = tk.Tk()
window.geometry('350x250')
# Label
ttk.Label(window, text = "Select the Month :",
		font = ("Times New Roman", 10)).grid(column = 0,
		row = 15, padx = 10, pady = 25)

n = tk.StringVar()
monthchoosen = ttk.Combobox(window, width = 27,
							textvariable = n)

# Adding combobox drop down list
monthchoosen['values'] = (' January',
						' February',
						' March',
						' April',
						' May',
						' June',
						' July',
						' August',
						' September',
						' October',
						' November',
						' December')

monthchoosen.grid(column = 1, row = 15)

# Shows february as a default value
monthchoosen.current(1)
window.mainloop()

Выход: