etutorialspoint
  • Home
  • PHP
  • MySQL
  • MongoDB
  • HTML
  • Javascript
  • Node.js
  • Express.js
  • Python
  • Jquery
  • R
  • Kotlin
  • DS
  • Blogs
  • Theory of Computation

Python Tkinter Scale Widget

In this post, you will learn about the Python Tkinter scale widget.

Python provides various libraries for developing Graphical User Interfaces (GUIs) applications, such as PyQT, Tkinter, Kivy, and PySide. Tkinter is the standard GUI library that provides a fast and easy way to create GUI applications. It is also called the Tk interface. It is an original GUI library for Tcl (Tool Command Language). Tkinter comes pre-installed with Python. The greatest strength of Tkinter is its straightforwardness.





Python Tkinter provides a Scale widget to create a slider. It allows a user to select a numeric value by moving a slider knob along a scale. We can arrange the slider horizontally or vertically. The Scale widget creates a graphical object that allows a user to set a value by moving an indicator.





Syntax of scale() widget

scale(parent, options,...)

Here, the word parent is used to represent the parent window. These are the lists of options for the scale widget.

Option
Description
activebackground To set the color of the slider when the mouse is over the scale.
bg To set the background color of the parts of the widget that are outside of the trough.
bd To set the 3-d border around the slider.
command The procedure is called every time the slider is moved.
cursor To change the cursor icon when the mouse is over the scale.
digits A control variable to read the current value shown in a scale widget. It can be an IntVar, DoubleVar, or a StringVar.
font The font type used for labels or annotations.
fg To set the foreground color of the text.
from_ It contains one end of the scale. This is the top end of the vertical scale and the left end of the horizontal scale.
highlightbackground To set the color of the focus highlight when the widget does not have focus.
highlightcolor To set the color of the focus highlight when the widget has focus.
highlightthickness To set the thickness of the focus highlight.
label To set a label within the scale widget.
length The length of the scale widget. By default, they are 100 pixels.
orient Set orient = HORIZONTAL if you want the scale to run along the x direction.
relief To set a border around the label.
repeatdelay To set the duration up to which the button is pressed before the slider starts moving in that direction repeatedly.
resolution This is the smallest unit that the user will be able to change the scale in whole units.
showvalue To show the current value of the scale in text form via the slider. Set this option to 0 to suppress that label.
state By default, the scale widget is activate. We can set this value to 'DISABLED' for making it unresponsive.
takefocus The focus will cycle through the scale widgets by default. We can set this option to 0.
tickinterval No ticks are displayed by default. We can set this option to a periodic number.
to It contains one end of the scale. This is the bottom end for the vertical scale and the right end for the horizontal scale.
troughcolor To set the color of the trough.
variable It shows a control variable for the scale.
width The width of the trough part of the widget.




Methods of scale widget

  • get() - This method returns the current value of the scale.
  • set(value) - This method sets the scale's value.




Simple tkinter scale widget Program

Here is the basic scale slider program -

from tkinter import *
master = Tk()
w = Scale(master, from_=0, to=50)
w.pack()
w = Scale(master, from_=0, to=50, orient=HORIZONTAL)
w.pack()
mainloop()
Output of the above code- Python Tkinter Scale



Tkinter scale get value

In the given tkinter scale widget program, we are getting the current value of the scale.

from tkinter import *

def getValue():
   selection = "Value = " + str(var.get())
   label.config(text = selection)

root = Tk()
var = DoubleVar()
scale = Scale( root, variable = var )
scale.pack(anchor=CENTER)

button = Button(root, text="Get Scale Value", command=getValue)
button.pack(anchor=CENTER)

label = Label(root)
label.pack()

root.mainloop()
Output of the above code: Python Tkinter Scale

Advance Tkinter Scale Program

Here, we have added more options to the scale widget for enhancing the features of the scroller. We have defined 'onScroll()' method that will be called every time the slider is moved and we have created a button that is attached with 'readScale()' method to read the current slider value.

from tkinter import *

class TkSlider(Frame):
    def __init__(self,parent=None):
        Frame.__init__(self,parent)
        self.pack()
        self.var = IntVar()
        
        Scale(self,label='Miles',
            command=self.onScroll,
            variable = self.var,
            from_=0 , to=100,
            length=200,
            tickinterval=20,
            orient=HORIZONTAL,
            bg="#8ED2C9",
            fg="black",
            troughcolor="#006495",
            width=20  ).pack()
        
        Button(self , text='Read',
               command=self.readScale).pack(pady=10)

    def onScroll(self, value):
        print ('Current Value = ' , value)

    def readScale(self):
        print ('Read Scroller = ' , self.var.get())

if __name__ == '__main__' :
    TkSlider().mainloop()
Output of the above code-
Complex Tkinter Scale



Related Articles

Python OpenCV Overlaying or Blending Two Images
Install NLTK for Python on Windows 64 bit
Python OpenCV Histogram of Grayscale Image
Find the stop words in nltk Python
Python Tkinter Combobox Event Binding
Python Tkinter Combobox
Add background image in Python Tkinter
Python Tkinter Text Widget
Countdown clock and timer using Tkinter in Python
Python Tkinter Frame Widget
Python Tkinter Checkbutton Widget
Entry Field Validation in Tkinter Python
Python Tkinter Tutorial with Examples
Python Tkinter Scale Widget
Python3 Tkinter Messagebox
Python 3 Tkinter Menu Bar
Python Tkinter Geometry Managers
Python get visitor information by IP address
Python OpenCV ColorMap
Python Webbrowser
Python Pandas Plotting
Python Pandas CSV to Dataframe




Most Popular Development Resources
Retrieve Data From Database Without Page refresh Using AJAX, PHP and Javascript
-----------------
PHP Create Word Document from HTML
-----------------
How to get data from XML file in PHP
-----------------
Hypertext Transfer Protocol Overview
-----------------
PHP code to send email using SMTP
-----------------
How to encrypt password in PHP
-----------------
Characteristics of a Good Computer Program
-----------------
Create Dynamic Pie Chart using Google API, PHP and MySQL
-----------------
PHP MySQL PDO Database Connection and CRUD Operations
-----------------
Splitting MySQL Results Into Two Columns Using PHP
-----------------
Dynamically Add/Delete HTML Table Rows Using Javascript
-----------------
How to get current directory, filename and code line number in PHP
-----------------
How to add multiple custom markers on google map
-----------------
Fibonacci Series Program in PHP
-----------------
Get current visitor\'s location using HTML5 Geolocation API and PHP
-----------------
How to Sort Table Data in PHP and MySQL
-----------------
Submit a form data using PHP, AJAX and Javascript
-----------------
Simple star rating system using PHP, jQuery and Ajax
-----------------
How to generate QR Code in PHP
-----------------
jQuery loop over JSON result after AJAX Success
-----------------
Simple pagination in PHP
-----------------
Recover forgot password using PHP7 and MySQLi
-----------------
PHP MYSQL Advanced Search Feature
-----------------
PHP Server Side Form Validation
-----------------
PHP user registration and login/ logout with secure password encryption
-----------------
Simple PHP File Cache
-----------------
jQuery File upload progress bar with file size validation
-----------------
Simple File Upload Script in PHP
-----------------
Simple way to send SMTP mail using Node.js
-----------------
Php file based authentication
-----------------
To check whether a year is a leap year or not in php
-----------------
PHP User Authentication by IP Address
-----------------
Calculate distance between two locations using PHP
-----------------
How to print specific part of a web page in javascript
-----------------
PHP Secure User Registration with Login/logout
-----------------
Simple Show Hide Menu Navigation
-----------------
Detect Mobile Devices in PHP
-----------------
Polling system using PHP, Ajax and MySql
-----------------
PHP Sending HTML form data to an Email
-----------------
Google Street View API Example
-----------------
SQL Injection Prevention Techniques
-----------------
Get Visitor\'s location and TimeZone
-----------------
Driving route directions from source to destination using HTML5 and Javascript
-----------------
Convert MySQL to JSON using PHP
-----------------
Preventing Cross Site Request Forgeries(CSRF) in PHP
-----------------
Set and Get Cookies in PHP
-----------------
CSS Simple Menu Navigation Bar
-----------------
PHP Programming Error Types
-----------------
Date Timestamp Formats in PHP
-----------------
How to add google map on your website and display address on click marker
-----------------
How to select/deselect all checkboxes using Javascript
-----------------
Write a python program to print all even numbers between 1 to 100
-----------------
How to display PDF file in web page from Database in PHP
-----------------
PHP Getting Document of Remote Address
-----------------
File Upload Validation in PHP
-----------------


Most Popular Blogs
Most in demand programming languages
Best mvc PHP frameworks in 2019
MariaDB vs MySQL
Most in demand NoSQL databases for 2019
Best AI Startups In India
Kotlin : Android App Development Choice
Kotlin vs Java which one is better
Top Android App Development Languages in 2019
Web Robots
Data Science Recruitment of Freshers - 2019


Interview Questions Answers
Basic PHP Interview
Advanced PHP Interview
MySQL Interview
Javascript Interview
HTML Interview
CSS Interview
Programming C Interview
Programming C++ Interview
Java Interview
Computer Networking Interview
NodeJS Interview
ExpressJS Interview
R Interview


Popular Tutorials
PHP Tutorial (Basic & Advance)
MySQL Tutorial & Exercise
MongoDB Tutorial
Python Tutorial & Exercise
Kotlin Tutorial & Exercise
R Programming Tutorial
HTML Tutorial
jQuery Tutorial
NodeJS Tutorial
ExpressJS Tutorial
Theory of Computation Tutorial
Data Structure Tutorial
Javascript Tutorial






Learn Popular Language

listen
listen
listen
listen
listen

Blogs

  • Jan 3

    Stateful vs Stateless

    A Stateful application recalls explicit subtleties of a client like profile, inclinations, and client activities...

  • Dec 29

    Best programming language to learn in 2021

    In this article, we have mentioned the analyzed results of the best programming language for 2021...

  • Dec 20

    How is Python best for mobile app development?

    Python has a set of useful Libraries and Packages that minimize the use of code...

  • July 18

    Learn all about Emoji

    In this article, we have mentioned all about emojis. It's invention, world emoji day, emojicode programming language and much more...

  • Jan 10

    Data Science Recruitment of Freshers

    In this article, we have mentioned about the recruitment of data science. Data Science is a buzz for every technician...

Follow us

  • etutorialspoint facebook
  • etutorialspoint twitter
  • etutorialspoint linkedin
etutorialspoint youtube
About Us      Contact Us


  • eTutorialsPoint©Copyright 2016-2023. All Rights Reserved.