Python Tkinter - ScrolledText Widget - GeeksforGeeks

21 Apr, 2020
Tkinter is a built-in standard python library. With the help of Tkinter, many GUI applications can be created easily. There are various types of widgets available in Tkinter such as button, frame, label, menu, scrolledtext, canvas and many more. A widget is an element that provides various controls. ScrolledText widget is a text widget with a scroll bar. The tkinter.scrolledtext module provides the text widget along with a scroll bar. This widget helps the user enter multiple lines of text with convenience. Instead of adding a Scroll bar to a text widget, we can make use of a scrolledtext widget that helps to enter any number of lines of text.
Example 1 : Python code displaying scrolledText widget.
# Python program demonstrating# ScrolledText widget in tkinter  import tkinter as tkfrom tkinter import ttkfrom tkinter import scrolledtext  # Creating tkinter main windowwin = tk.Tk()win.title("ScrolledText Widget")  # Title Labelttk.Label(win,           text = "ScrolledText Widget Example",          font = ("Times New Roman", 15),           background = 'green',           foreground = "white").grid(column = 0,                                     row = 0)  # Creating scrolled text # area widgettext_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 areatext_area.focus()win.mainloop()
Output :
Example 2 : ScrolledText widget making tkinter text Read only.
# Importing required modules  import tkinter as tkimport tkinter.scrolledtext as st  # Creating tkinter windowwin = tk.Tk()win.title("ScrolledText Widget")  # Title Labeltk.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 statetext_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 onlytext_area.insert(tk.INSERT,"""\This is a scrolledtext widget to make tkinter text read only.HiGeeks !!!Geeks !!!Geeks !!! Geeks !!!Geeks !!!Geeks !!!Geeks !!!""")  # Making the text read onlytext_area.configure(state ='disabled')win.mainloop()
Output :
In the first example, as you can see the cursor, the user can enter any number of lines of text. In the second example, the user can just read the text which is displayed in the text box and cannot edit/enter any lines of text. We may observe that the scroll bar disappears automatically if the text entered by the user is less than the size of the widget.
Python-tkinter
Python
Write From Home
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Read JSON file using Python
Adding new column to existing DataFrame in Pandas
Python map() function
How to get column names in Pandas dataframe
Read a file line by line in Python
Convert integer to string in Python
Convert string to integer in Python
How to set input type date in dd-mm-yyyy format using HTML ?
Python infinity
Matplotlib.pyplot.title() in Python