Курс Python → Combobox в Tkinter

Для добавления виджета Combobox в свое приложение Python, вам необходимо использовать класс Combobox из библиотеки tkinter. Этот виджет представляет собой поле с выпадающим списком, в котором пользователь может выбирать один из предложенных вариантов.

Пример создания Combobox:

from tkinter import *
from tkinter.ttk import Combobox

root = Tk()
combo = Combobox(root)
combo['values'] = ('Вариант 1', 'Вариант 2', 'Вариант 3')
combo.current(0)
combo.pack()

root.mainloop()

В данном примере мы создаем Combobox и передаем ему значения в виде кортежа (‘Вариант 1’, ‘Вариант 2’, ‘Вариант 3’). Метод current(0) устанавливает выбранный элемент по индексу (в данном случае первый элемент). После этого виджет добавляется на главное окно с помощью метода pack().

Для получения выбранного элемента из Combobox можно воспользоваться методом get(). Например, чтобы получить выбранный пользователем вариант:

selected_option = combo.get()
print(selected_option)

Также можно добавлять новые пункты в Combobox динамически, например, в ответ на нажатие кнопки. Для этого необходимо создать функцию, которая будет добавлять новый элемент в список значений Combobox и обновлять его:

def add_option():
    new_option = 'Новый вариант'
    combo['values'] = tuple(list(combo['values']) + [new_option])
    combo.current(len(combo['values'])-1)

button = Button(root, text='Добавить', command=add_option)
button.pack()

Таким образом, вы можете легко добавить и настроить виджет Combobox в своем приложении Python, позволяя пользователям выбирать из предопределенных вариантов или добавлять их по мере необходимости.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Сортировка HTML по CSS-селектору
  2. Использование функции product
  3. Перемешивание списка с shuffle()
  4. Многопоточность и асинхронное программирование в Python
  5. Функции map() и reduce() в Python
  6. Декоратор Ajax required
  7. Установка Home Assistant
  8. Декораторы в Python
  9. Управление User-Agent в Python
  10. Асинхронное выполнение задач в процессах
  11. Сумма элементов списка
  12. Библиотека schedule: планировщик задач
  13. Сортировка данных с лямбда-функциями
  14. Оценка выражений генератора в Python
  15. Создание namedtuple из словаря
  16. Оператор «not» в Python
  17. globals и locals
  18. Форматирование строк в Python
  19. Разработка игры Pong с turtle
  20. Работа с Path в Python
  21. Функции в одну строку
  22. Упрощение условных выражений с тернарным оператором
  23. Оператор «is not» в Python
  24. Переопределение метода len
  25. Итерация по итерируемым объектам
  26. Создание виртуальной среды
  27. Передача аргументов в Python
  28. Функция zip() для объединения списков
  29. Функция divmod() в Python
  30. Применение функции map() с лямбда-функциями
  31. Многострочные строки в Python
  32. Использование *args
  33. Проверка надежности пароля на Python
  34. Декоратор Ajax required
  35. Хэш-функции в Python
  36. Работа с кортежами в Python
  37. Оператор обр. импликации
  38. Оператор break в Python
  39. Курсы Яндекс Практикум
  40. Кортежи в Python: особенности и преимущества
  41. Извлечение аудио из видео
  42. Отладчик pdb: начало работы
  43. Разделение строки с регулярными выражениями
  44. Проверка строки на палиндром

Marketello читают маркетологи из крутых компаний