Thursday, September 4, 2025
HomeLanguagesHow to Pass Arguments to Tkinter Button Command?

How to Pass Arguments to Tkinter Button Command?

When a user hits the button on the Tkinter Button widget, the command option is activated. In some situations, it’s necessary to supply parameters to the connected command function. In this case, the procedures for both approaches are identical; the only thing that has to vary is the order in which you use them.

Method 1: Pass Arguments to Tkinter Button using the lambda function

Import the Tkinter package and create a root window. Give the root window a title(using title()) and dimension(using geometry()), now Create a button using (Button()). Use mainloop() to call the endless loop of the window. lambda function creates a temporary simple function to be called when the Button is clicked.

Python3




# importing tkinter
import tkinter as tk
 
# defining function
 
 
def func(args):
    print(args)
 
 
# create root window
root = tk.Tk()
 
# root window title and dimension
root.title("Welcome to GeekForGeeks")
root.geometry("380x400")
 
# creating button
btn = tk.Button(root, text="Press", command=lambda: func("See this worked!"))
btn.pack()
 
# running the main loop
root.mainloop()


Output:

Pass Arguments to Tkinter Button

using lambda

Method 2: Pass Arguments to Tkinter Button using partial 

Import the Tkinter package and create a root window. Give the root window a title(using title()) and dimension(using geometry()), now Create a button using (Button()). Use mainloop() to call the endless loop of the window. command=partial returns a callable object that behaves like a func when it is called.

Python3




# importing necessary libraries
from functools import partial
import tkinter as tk
 
# defining function
 
 
def function_name(func):
    print(func)
 
 
# creating root window
root = tk.Tk()
 
# root window title and dimension
root.title("Welcome to GeekForGeeks")
root.geometry("380x400")
 
# creating button
btn = tk.Button(root, text="Click Me", command=partial(
    function_name, "Thanks, Geeks for Geeks !!!"))
btn.pack()
 
# running the main loop
root.mainloop()


Output:

Pass Arguments to Tkinter Button

using partial

RELATED ARTICLES

Most Popular

Dominic
32264 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6632 POSTS0 COMMENTS
Nicole Veronica
11800 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11859 POSTS0 COMMENTS
Shaida Kate Naidoo
6749 POSTS0 COMMENTS
Ted Musemwa
7025 POSTS0 COMMENTS
Thapelo Manthata
6698 POSTS0 COMMENTS
Umr Jansen
6718 POSTS0 COMMENTS