Python GUI Programming (Tkinter)





Python provides various options for developing graphical user interfaces (GUIs). Most important are listed below.

There are many other interfaces available, which you can find them on the net.

Tkinter Programming

Tkinter is the standard GUI library for Python. Python when combined with Tkinter provides a fast and easy way to create GUI applications. Tkinter provides a powerful object-oriented interface to the Tk GUI toolkit.

Creating a GUI application using Tkinter is an easy task. All you need to do is perform the following steps −

Example

#!/usr/bin/python

import tkinter
top = tkinter.Tk()
# Code to add widgets will go here...
top.mainloop()

This would create a following window −

Topics You May Be Interested In
Python Decision Making Python - Webform Submission
Python Tuples Python - Reformatting Paragraphs
Python - Amortized Analysis Python - Tokenization
Python - Internet Protocol Python - Corpora Access
Python - Http Server Python Exceptions Handling
Python GUI Programming (Tkinter)

Tkinter Widgets

Tkinter provides various controls, such as buttons, labels and text boxes used in a GUI application. These controls are commonly called widgets.

There are currently 15 types of widgets in Tkinter. We present these widgets as well as a brief description in the following table −

Sr.No. Operator & Description
1 Button

The Button widget is used to display buttons in your application.

2 Canvas

The Canvas widget is used to draw shapes, such as lines, ovals, polygons and rectangles, in your application.

Topics You May Be Interested In
Python Loops Python - Tree Traversal Algorithms
Python Exceptions Handling Python - Http Client
Python - Maps Python - Filter Duplicate Words
Python - Recursion Python Overview
Python - Backtracking Python Variable Types
3 Checkbutton

The Checkbutton widget is used to display a number of options as checkboxes. The user can select multiple options at a time.

4 Entry

The Entry widget is used to display a single-line text field for accepting values from a user.

5 Frame

The Frame widget is used as a container widget to organize other widgets.

6 Label

The Label widget is used to provide a single-line caption for other widgets. It can also contain images.

Topics You May Be Interested In
Python Decision Making Python - Tokenization
Python Lists Python - Process Pdf
Python Exceptions Handling Python Basic Syntax
Python - Searching Algorithms Python Decision Making
Python - Custom Http Requests Python Date And Time
7 Listbox

The Listbox widget is used to provide a list of options to a user.

8 Menubutton

The Menubutton widget is used to display menus in your application.

9 Menu

The Menu widget is used to provide various commands to a user. These commands are contained inside Menubutton.

10 Message

The Message widget is used to display multiline text fields for accepting values from a user.

Topics You May Be Interested In
Python Tutorial Python - Uploading Data
Python Environment Setup Python - Rss Feed
Python - Ds Environment Python - Extract Emails From Text
Python - Searching Algorithms Python - Bigrams
Python - Algorithm Analysis Python Functions
11 Radiobutton

The Radiobutton widget is used to display a number of options as radio buttons. The user can select only one option at a time.

12 Scale

The Scale widget is used to provide a slider widget.

13 Scrollbar

The Scrollbar widget is used to add scrolling capability to various widgets, such as list boxes.

14 Text

The Text widget is used to display text in multiple lines.

Topics You May Be Interested In
Python Environment Setup Python - Sorting Algorithms
Python Strings Python - Databases And Sql
Python Extension Programming With C Python - Search And Match
Discuss Python Python Basic Syntax
Python - Ds Home Python Date And Time
15 Toplevel

The Toplevel widget is used to provide a separate window container.

16 Spinbox

The Spinbox widget is a variant of the standard Tkinter Entry widget, which can be used to select from a fixed number of values.

17 PanedWindow

A PanedWindow is a container widget that may contain any number of panes, arranged horizontally or vertically.

18 LabelFrame

A labelframe is a simple container widget. Its primary purpose is to act as a spacer or container for complex window layouts.

Topics You May Be Interested In
Python Environment Setup Python - Text Classification
Python Basic Operators Python - Text Wrapping
Python Strings Python Basic Operators
Python - Linked Lists Python Loops
Python - Text Translation Python Lists
19 tkMessageBox

This module is used to display message boxes in your applications.

Let us study these widgets in detail −

Standard attributes

Let us take a look at how some of their common attributes.such as sizes, colors and fonts are specified.

Let us study them briefly −

Geometry Management

All Tkinter widgets have access to specific geometry management methods, which have the purpose of organizing widgets throughout the parent widget area. Tkinter exposes the following geometry manager classes: pack, grid, and place.

Topics You May Be Interested In
Python Dictionary Python - Recursion
Python Date And Time Python - Rss Feed
Python Functions Python - Text Processing State Machine
Python Sending Email Using Smtp Python - Tokenization
Python - Lists Python - Constrained Search
  • The pack() Method − This geometry manager organizes widgets in blocks before placing them in the parent widget.

  • The grid() Method − This geometry manager organizes widgets in a table-like structure in the parent widget.

  • The place() Method − This geometry manager organizes widgets by placing them in a specific position in the parent widget.

Let us study the geometry management methods briefly −

Topics You May Be Interested In
Python Numbers Python - Http Requests
Python Functions Python - Databases And Sql
Python Gui Programming (tkinter) Python - Web Servers
Python Quick Guide Python - Filter Duplicate Words
Python - Dictionary Python - Bigrams


Frequently Asked Questions

+
Ans: Python XML Processing - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python Multithreaded Programming - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python Sending Email using SMTP - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python GUI Programming (Tkinter) - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python Extension Programming with C - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python Quick Guide - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python Tools/Utilities - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..
+
Ans: Python Useful Resources - Learn Python in simple and easy steps starting from basic to advanced concepts with examples including Python Syntax Object Oriented Language, Methods, Tuples, Tools/Utilities, Exceptions Handling, Sockets, GUI, Extentions, XML Programming. view more..




Rating - NAN/5
532 views

Advertisements