You are currently viewing Python Tkinter – Виджет списка

Python Tkinter – Виджет списка

Tkinter — это набор инструментов с графическим интерфейсом, используемый в python для создания удобных графических интерфейсов.Tkinter-это наиболее часто используемый и самый базовый графический интерфейс, доступный в python. Tkinter использует объектно-ориентированный подход для создания графических интерфейсов.

Примечание: Для получения дополнительной информации обратитесь к графическому интерфейсу Python – tkinter

Виджет списка

Виджет «ListBox» используется для отображения различных типов элементов. Эти элементы должны быть одного типа шрифта и иметь один и тот же цвет шрифта. Элементы также должны быть текстового типа. Пользователь может выбрать один или несколько элементов из заданного списка в соответствии с требованиями.

Синтаксис:

listbox = Listbox(root, bg, fg, bd, height, width, font, ..)  

Дополнительные параметры:

  • root – корневое окно.
  • bg – цвет фона
  • fg – цвет переднего плана
  • bd – граница
  • height – высота виджета.
  • width – ширина виджета.
  • font – Тип шрифта текста.
  • highlightcolor – цвет элементов списка при фокусировке.
  • yscrollcommand – для прокрутки по вертикали.
  • xscrollcommand – для прокрутки по горизонтали.
  • cursor – Курсор на виджете, который может быть стрелкой, точкой и т.д.

Распространенные методы:

  • yview – позволяет виджету прокручиваться по вертикали.
  • xview – позволяет виджету прокручиваться по горизонтали.
  • get() – чтобы получить элементы списка в заданном диапазоне.
  • activate(index) – для выбора строк с указанным индексом.
  • size() – возвращает количество имеющихся строк.
  • delete(start, last) – удаление строк в указанном диапазоне.
  • nearest(y) – возвращает индекс ближайшей строки.
  • curseselection() – возвращает кортеж для всех выбранных номеров строк.

Пример 1:

from tkinter import *


# create a root window.
top = Tk()

# create listbox object
listbox = Listbox(top, height = 10,
				width = 15,
				bg = "grey",
				activestyle = 'dotbox',
				font = "Helvetica",
				fg = "yellow")

# Define the size of the window.
top.geometry("300x250")

# Define a label for the list.
label = Label(top, text = " FOOD ITEMS")

# insert elements by their
# index and names.
listbox.insert(1, "Nachos")
listbox.insert(2, "Sandwich")
listbox.insert(3, "Burger")
listbox.insert(4, "Pizza")
listbox.insert(5, "Burrito")

# pack the widgets
label.pack()
listbox.pack()


# Display untill User
# exits themselves.
top.mainloop()

Пример 2:

Давайте удалим элементы из созданного выше списка

# Delete Items from the list
# by specifying the index.
listbox.delete(2)

Выход