Курс 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. Создание множества в Python
  2. Типы возвращаемых значений в Python
  3. Тестирование с unittest
  4. Метод title() в Python
  5. Перегрузка операторов в Python
  6. Python enumerate() использование
  7. Форматирование даты с strftime()
  8. Форматирование кода на Python
  9. Склеивание строк через метод join()
  10. Функциональное программирование.
  11. Разбиение строки в Python
  12. Python defaultdict добавление ключа
  13. Хранение данных с помощью dataclasses
  14. Мониторинг работы программы Py-spy
  15. Поиск файлов по шаблону
  16. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  17. Множественные конструкторы в Python
  18. Создание вложенных циклов for
  19. Преобразование числа в список цифр
  20. Перетасовка списков в Python
  21. Метод clear для коллекций
  22. Изменения в обработке логических значений
  23. Использование html-скриптов в Jupyter Notebook
  24. Конструктор в Python
  25. Вычисление разности множеств в Python
  26. Импорт с альтернативным именем
  27. Python Метод del.
  28. Компиляция регулярных выражений
  29. Карта бомбоубежищ в Москве и Питере
  30. Отслеживание выполнения программы с библиотекой tqdm
  31. Работа с OpenCV
  32. Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
  33. Удаление специальных символов с помощью re.sub
  34. Генераторы в Python
  35. Запуск файлового сервера
  36. Замена подстроки
  37. Переопределение метода __lshift__
  38. Python Тесты и Гайды
  39. Повторение элементов в Python
  40. Работа с CSV файлами
  41. Defaultdict в Python
  42. Работа с географическими данными.
  43. Удаление элементов из списка
  44. Python enumerate() функции
  45. Избегайте двойного подчеркивания
  46. Работа с библиотекой requests
  47. Извлечение данных из JSON
  48. Возврат нескольких значений

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