Шаг 77.
Библиотека Tkinter. Компоненты и вспомогательные классы. Нестилизуемые компоненты. Компонент Text: основные методы

    На этом шаге мы перечислим методы этого компонента и приведем простой пример их использования.

    Основные методы у Text такие же как у Entry (смотри 35 шаг) – это get(), insert(), delete(). Однако, если в случае однострочного текстового поля было достаточно указать один индекс элемента при вставке или удалении, то в случае многострочного надо указывать два – номер строки и номер символа в этой строке (другими словами, номер столбца). При этом нумерация строк начинается с единицы, а столбцов – с нуля.

from tkinter import *
 
 
def insert_text():
    s = "Hello World"
    text.insert(1.0, s)
 
 
def get_text():
    s = text.get(1.0, END)
    label['text'] = s
 
 
def delete_text():
    text.delete(1.0, END)
 
 
root = Tk()
 
text = Text(width=25, height=5)
text.pack()
 
frame = Frame()
frame.pack()
Button(frame, text="Вставить", command=insert_text).pack(side=LEFT)
Button(frame, text="Взять", command=get_text).pack(side=LEFT)
Button(frame, text="Удалить", command=delete_text).pack(side=LEFT)
 
label = Label()
label.pack()
 
root.mainloop()
Архив с файлом можно взять здесь.


Рис.1. Демонстрация работы перечисленных методов

    Методы get() и delete() могут принимать не два, а один аргумент. В таком случае будет обрабатываться только один символ в указанной позиции.

    На следующем шаге мы рассмотрим использование тэгов и виджетов в многострочном поле.




Предыдущий шаг Содержание Следующий шаг