Python Tkinter Text

Python Tkinter Text Widget: A Comprehensive Guide

Python Tkinter Text

Tkinter, the standard GUI toolkit for Python, provides various widgets to build interactive applications. One of the essential widgets is the Text widget, which allows users to work with multi-line formatted text, making it ideal for text editors, messaging apps, or any application requiring rich text input and display.

Complete Python Course with Advance topics:-Click here

Why Use the Tkinter Text Widget?

Unlike the Entry widget, which only allows single-line text input, the Text widget supports multi-line text with different styles, attributes, and embedded images or windows. It provides flexibility with advanced text formatting options, making it a powerful tool for Python GUI applications.

Syntax of the Text Widget

To create a Text widget in Tkinter, use the following syntax:

w = Text(top, options)

Here, top refers to the parent window or frame, and options allow customization of the widget.

Key Options for the Text Widget

Tkinter provides several customization options for the Text widget. Below are some essential ones:

Option Description
bg Sets the background color.
bd Defines the border width.
cursor Changes the mouse pointer type.
font Specifies the font style and size.
fg Changes the text color.
height Defines the number of lines displayed.
width Defines the number of characters per line.
padx Adds horizontal padding.
pady Adds vertical padding.
wrap Controls text wrapping (WORD, CHAR, or NONE).
xscrollcommand Enables horizontal scrolling.
yscrollcommand Enables vertical scrolling.

Useful Methods of the Text Widget

The Text widget comes with several methods that allow manipulation of text data efficiently.

Basic Text Operations

Method Description
delete(start, end) Deletes text within a given range.
get(start, end) Retrieves text from a specified range.
insert(index, text) Inserts text at a specific index.
index(index) Returns the absolute index of a position.
see(index) Checks if text at an index is visible.

Mark Handling Methods

Marks in Tkinter help bookmark specific positions in the text.

Method Description
mark_set(mark, index) Sets a mark at the given index.
mark_unset(mark) Removes a mark from the text.
mark_gravity(mark, gravity) Adjusts the gravity of a mark.

Tag Handling Methods

Tags allow different formatting for specific text sections.

Method Description
tag_add(tagname, start, end) Assigns a tag to a text range.
tag_config(tagname, options) Configures tag properties like color and font.
tag_delete(tagname) Deletes a specified tag.
tag_remove(tagname, start, end) Removes a tag from a text range.

Example: Creating a Simple Tkinter Text Widget

Let’s see an example demonstrating text insertion and formatting using tags.

from tkinter import *  
  
top = Tk()  
text = Text(top, height=5, width=30)  
text.insert(INSERT, "Enter your Name...")  
text.insert(END, "\nEnter your Salary...")  
  
text.pack()  
  
text.tag_add("highlight", "1.0", "1.4")  
text.tag_add("alert", "1.8", "1.13")  
  
text.tag_config("highlight", background="yellow", foreground="black")  
text.tag_config("alert", background="black", foreground="white")  
  
top.mainloop()

Output

This script creates a Tkinter window with a multi-line text box where:

  • “Enter” is highlighted with a yellow background.
  • “Name” is highlighted with a black background and white text.

image-40 Python Tkinter Text Widget: A Comprehensive Guide

Download New Real Time Projects :-Click here
Complete Advance AI topics:- CLICK HERE

Conclusion

The Tkinter Text widget is a powerful tool for handling multi-line text input and formatting in Python applications. With features like tagging, marks, and event handling, it provides extensive control over text manipulation. Whether you’re building a text editor, chat application, or documentation tool, the Text widget is an essential component for creating a user-friendly interface.

Keep Exploring Tkinter!

Try combining the Text widget with scrollbars and buttons to build a fully functional text editor. Let us know your experience with Tkinter in the comments!

Stay updated with more Python GUI tutorials at updategadh! 🚀


python tkinter text example
python tkinter text widget
tkinter text insert
python tkinter text box
python tkinter text tutorial
tkinter text=get
tkinter text box read only
tkinter text delete
python tkinter text
python tkinter text box
python tkinter text input
python tkinter text color
python tkinter text box scrollbar
python tkinter text box get value

Post Comment