Tkinter — это встроенная стандартная библиотека python. С помощью Tkinter можно легко создавать множество приложений с графическим интерфейсом. В Tkinter доступны различные типы виджетов, такие как кнопка, рамка, метка, меню, прокручиваемый текст, холст и многое другое. Виджет — это элемент, который предоставляет различные элементы управления. Виджет ScrolledText — это текстовый виджет с полосой прокрутки. То inter.scrolledtext
модуль предоставляет текстовый виджет вместе с полосой прокрутки. Этот виджет помогает пользователю с удобством вводить несколько строк текста. Вместо добавления полосы прокрутки в текстовый виджет мы можем использовать виджет scrolledtext, который помогает вводить любое количество строк текста.
Пример 1 :
Код Python, отображающий виджет прокрутки текста.
# Python program demonstrating
# ScrolledText widget in tkinter
import tkinter as tk
from tkinter import ttk
from tkinter import scrolledtext
# Creating tkinter main window
win = tk.Tk()
win.title("ScrolledText Widget")
# Title Label
ttk.Label(win,
text = "ScrolledText Widget Example",
font = ("Times New Roman", 15),
background = 'green',
foreground = "white").grid(column = 0,
row = 0)
# Creating scrolled text
# area widget
text_area = scrolledtext.ScrolledText(win,
wrap = tk.WORD,
width = 40,
height = 10,
font = ("Times New Roman",
15))
text_area.grid(column = 0, pady = 10, padx = 10)
# Placing cursor in the text area
text_area.focus()
win.mainloop()
Выход:
Пример 2:
Виджет ScrolledText делает текст tkinter доступным только для чтения.
# Importing required modules
import tkinter as tk
import tkinter.scrolledtext as st
# Creating tkinter window
win = tk.Tk()
win.title("ScrolledText Widget")
# Title Label
tk.Label(win,
text = "ScrolledText Widget Example",
font = ("Times New Roman", 15),
background = 'green',
foreground = "white").grid(column = 0,
row = 0)
# Creating scrolled text area
# widget with Read only by
# disabling the state
text_area = st.ScrolledText(win,
width = 30,
height = 8,
font = ("Times New Roman",
15))
text_area.grid(column = 0, pady = 10, padx = 10)
# Inserting Text which is read only
text_area.insert(tk.INSERT,
"""\
This is a scrolledtext widget to make tkinter text read only.
Hi
Geeks !!!
Geeks !!!
Geeks !!!
Geeks !!!
Geeks !!!
Geeks !!!
Geeks !!!
""")
# Making the text read only
text_area.configure(state ='disabled')
win.mainloop()
Выход:
В первом примере, как вы можете видеть курсор, пользователь может ввести любое количество строк текста. Во втором примере пользователь может просто прочитать текст, отображаемый в текстовом поле, и не может редактировать/вводить какие-либо строки текста. Мы можем заметить, что полоса прокрутки автоматически исчезает, если текст, введенный пользователем, меньше размера виджета.