The Button widget is used to add buttons in a Python application. These buttons can display text or images that convey the purpose of the buttons. You can attach a function or a method to a button which is called automatically when you click the button.
Syntax
Here is the simple syntax to create this widget −
w = Button [ master, option=value, ... ]
Parameters
master − This represents the parent window.
options − Here is the list of most commonly used options for this widget. These options can be used as key-value pairs separated by commas.
1 | activebackground Background color when the button is under the cursor. |
2 | activeforeground Foreground color when the button is under the cursor. |
3 | bd Border width in pixels. Default is 2. |
4 | bg Normal background color. |
5 | command Function or method to be called when the button is clicked. |
6 | fg Normal foreground [text] color. |
7 | font Text font to be used for the button's label. |
8 | height Height of the button in text lines [for textual buttons] or pixels [for images]. |
9 | highlightcolor The color of the focus highlight when the widget has focus. |
10 | image Image to be displayed on the button [instead of text]. |
11 | justify How to show multiple text lines: LEFT to left-justify each line; CENTER to center them; or RIGHT to right-justify. |
12 | padx Additional padding left and right of the text. |
13 | pady Additional padding above and below the text. |
14 | relief Relief specifies the type of the border. Some of the values are SUNKEN, RAISED, GROOVE, and RIDGE. |
15 | state Set this option to DISABLED to gray out the button and make it unresponsive. Has the value ACTIVE when the mouse is over it. Default is NORMAL. |
16 | underline Default is -1, meaning that no character of the text on the button will be underlined. If nonnegative, the corresponding text character will be underlined. |
17 | width Width of the button in letters [if displaying text] or pixels [if displaying an image]. |
18 | wraplength If this value is set to a positive number, the text lines will be wrapped to fit within this length. |
Methods
Following are commonly used methods for this widget −
1 | flash[] Causes the button to flash several times between active and normal colors. Leaves the button in the state it was in originally. Ignored if the button is disabled. |
2 | invoke[] Calls the button's callback, and returns what that function returns. Has no effect if the button is disabled or there is no callback. |
Example
Try the following example yourself −
import Tkinter import tkMessageBox top = Tkinter.Tk[] def helloCallBack[]: tkMessageBox.showinfo[ "Hello Python", "Hello World"] B = Tkinter.Button[top, text ="Hello", command = helloCallBack] B.pack[] top.mainloop[]
When the above code is executed, it produces the following result −
python_gui_programming.htm
The Tkinter button widget can be used to perform a specific actionable event within the application. We can also invoke the button widget without performing a click operation on it. The invoke[] method in Tcl/Tk does the same thing which returns a string in case if there are any commands given to the Button. The invoke[] method can be called up after the initialization of the Button widget. The event will be called automatically once the Button widget is prepared.
Example
# Import the required libraries from tkinter import * from tkinter import ttk from tkinter import messagebox # Create an instance of tkinter frame win = Tk[] # Set the size of the tkinter window win.geometry["700x350"] def display_msg[]: messagebox.showinfo["Message", "Hello There! Greeting from TutorialsPoint."] # Add a Button widget b1 = ttk.Button[win, text="Click Me", command=display_msg] b1.pack[pady=30] b1.invoke[] win.mainloop[]
Output
Running the above code will show up a popup message box automatically. When we click the Button, the popup will appear from the main window.
Updated on 08-Jun-2021 07:23:24
- Related Questions & Answers
- How to change Tkinter label text on button press?
- How to create a Button on a Tkinter Canvas?
- Add image on a Python Tkinter button
- How do you create a Button on a Tkinter Canvas?
- Detect home button press in android
- How to create a Tkinter toggle button?
- Setting the position on a button in Tkinter Python?
- On/Off Toggle Button Switch in Tkinter
- How to Disable / Enable a Button in TKinter?
- How to update a Button widget in Tkinter?
- How to highlight a tkinter button in macOS?
- How to display an image/screenshot in a Python Tkinter window without saving it?
- How to put a ListView into a ScrollView without it collapsing on Android?
- How to bind a key to a button in Tkinter?
- How to handle a Button click event in tkinter?