Python | Create a digital clock using Tkinter (original) (raw)
Last Updated : 28 Nov, 2024
As we know Tkinter is used to create a variety of GUI (Graphical User Interface) applications. In this article we will learn how to create a Digital clock using Tkinter.
**Prerequisites:
- Python functions
- Tkinter basics (Label Widget)
- Time module
**Using Label widget from Tkinter and time module:
In the following application, we are going to use Label widget and also going to use_**time module_ which we will use to retrieve system's time.
Below is the implementation:
Python `
importing whole module
from tkinter import * from tkinter.ttk import *
importing strftime function to
retrieve system's time
from time import strftime
creating tkinter window
root = Tk() root.title('Clock')
This function is used to
display time on the label
def time(): string = strftime('%H:%M:%S %p') lbl.config(text=string) lbl.after(1000, time)
Styling the label widget so that clock
will look more attractive
lbl = Label(root, font=('calibri', 40, 'bold'), background='purple', foreground='white')
Placing clock at the centre
of the tkinter window
lbl.pack(anchor='center') time()
mainloop()
`
**Output:
**Code Explanation:
- The code starts by importing the necessary modules.
- The first module is the tkinter library, which provides basic functionality for creating graphical user interfaces (GUIs).
- Next, the strftime function is imported to retrieve system time.
- Next, a window is created and given a title of "Clock."
- A function called time() is then created to display the current time on the label widget.
- This function uses the strftime() function to format the time string according to system conventions.
- The last part of this code sets up styling for the label widget so that it will look nicer.
- Finally, an instance of Label is created and placed at the center of the window.
- The time() function is executed, and your output should look like this: Clock: Tue Dec 12 08:00:00 2016
- The code creates a window and assigns it the title "Clock".
- The time() function is then called to display the current time on the label widget.
- The lbl.config() function is used to set the text of the label widget.
- The after() function is used to delay displaying the time for 1000 milliseconds.
- Finally, the style of the label widget is modified with lbl.pack().