1. About Tkinter Widget
To create graphics software, you must add graphic elements called widget to a window. The widgets term means a contraction of windows and gadget We have already seen in the previous chapter, that the Tkinter library is equipped with many widgets: command button, text area, drop-down list ... Today, we are going to see the Button widget which allows you to equip graphical applications with command buttons.
2. The Button widget
To create a command button on a Tkinter window, we use the syntax:
button_name = Button (window_name, text = "button text", action = button_action()
Example: Exit Button
from tkinter import *
myWindow = Tk()
# Creation of a command button
b = Button (myWindow, text = "Quit", command = quit)
# Place the button on the window with pack() method
b.pack()
# launch the window with the mainloop () method
myWindow.mainloop()
2. Pack method options
We now want to place a button wigdet to the left, right or top ... For this purpose, the pack method is equipped with the side option:
Example
from tkinter import *
myWindow = Tk()
myWindow.geometry("350x150")
# Creation of a command button
b1 = Button (myWindow, text = "Left button ")
b2 = Button (myWindow, text = "Right button ")
b3 = Button (myWindow, text = "Top button ")
b4 = Button (myWindow, text = "Bottom button ")
# Place the button on the window with pack() method
b1.pack(side = LEFT)
b2.pack(side = RIGHT)
b3.pack(side = TOP)
b4.pack(side = BOTTOM)
# launch the window with the mainloop () method
myWindow.mainloop()
3. Button Widget option
The button widget is equipped with many options allowing you to modify its appearance: background color, text color, size ...Here is a summary of a button widget options:
- activebackground : personalize the button background.
- activeforeground : personalize the the button font color when the mouse hover the button.
- bd : define the border width in pixels.
- bg : define the button background color.
- command : associate a command action with the button
- fg : personalize the button foreground color.
- font : define the police font of the button text.
- height : define the button height.
- highlightcolor : apply a color to button when the button has the focus.
- image : display an image on the button.
- justify : justify the button text. Example justify = "LEFT"
- padx : define the padding to the button in the horizontal direction.
- pady : definethe padding to the button in the vertical direction.
- relief : personalize the type of the border. For example: SUNKEN, RAISED, GROOVE, and RIDGE.
- state : this option is set ACTIVE to activate button or DISABLED to make the button unresponsive
- underline : this option is used to make the button text underlined.
- width : this option define the button width.
- wraplength : the text lines will be wrapped to fit within this length, when this value is set to a positive number.
Example
from tkinter import *
myWindow = Tk()
myWindow.geometry("450x250")
# Create a button with options
b = Button (myWindow,
text = "Button with options ",
bd= 30 ,
fg ="blue",
bg = "white",
width = 30,
font="Broadway" ,
relief = SUNKEN)
# Place the button on the window with pack() method
b.pack(side = RIGHT)
# launch the window with the mainloop () method
myWindow.mainloop()
my-courses.net