Python | Función de enlace en Tkinter

Tkinter es un módulo GUI (interfaz gráfica de usuario) que se usa ampliamente en aplicaciones de escritorio. Viene junto con Python, pero también puede instalarlo externamente con la ayuda del comando  pip .
Proporciona una variedad de clases y funciones de Widget con la ayuda de las cuales uno puede hacer que nuestra GUI sea más atractiva y fácil de usar en términos de apariencia y funcionalidad.
La función vinculante se utiliza para tratar los eventos. Podemos vincular las funciones y los métodos de Python a un evento, así como podemos vincular estas funciones a cualquier widget en particular.
Código n. ° 1: enlace del movimiento del mouse con tkinter Frame. 
 

Python3

# Import all files from
# tkinter and overwrite
# all the tkinter files
# by tkinter.ttk
from tkinter import *
from tkinter.ttk import *
 
# creates tkinter window or root window
root = Tk()
root.geometry('200x100')
 
# function to be called when mouse enters in a frame
def enter(event):
    print('Button-2 pressed at x = % d, y = % d'%(event.x, event.y))
 
# function to be called when mouse exits the frame
def exit_(event):
    print('Button-3 pressed at x = % d, y = % d'%(event.x, event.y))
 
# frame with fixed geometry
frame1 = Frame(root, height = 100, width = 200)
 
# these lines are showing the
# working of bind function
# it is universal widget method
frame1.bind('<Enter>', enter)
frame1.bind('<Leave>', exit_)
 
frame1.pack()
 
mainloop()

Producción: 
 

  
Código n. ° 2: Botones del mouse vinculantes con el marco Tkinter 
 

Python3

# Import all files from
# tkinter and overwrite
# all the tkinter files
# by tkinter.ttk
from tkinter import *
from tkinter.ttk import *
 
# creates tkinter window or root window
root = Tk()
root.geometry('200x100')
 
# function to be called when button-2 of mouse is pressed
def pressed2(event):
    print('Button-2 pressed at x = % d, y = % d'%(event.x, event.y))
 
# function to be called when button-3 of mouse is pressed
def pressed3(event):
    print('Button-3 pressed at x = % d, y = % d'%(event.x, event.y))
 
## function to be called when button-1 is double clocked
def double_click(event):
    print('Double clicked at x = % d, y = % d'%(event.x, event.y))
 
frame1 = Frame(root, height = 100, width = 200)
 
# these lines are binding mouse
# buttons with the Frame widget
frame1.bind('<Button-2>', pressed2)
frame1.bind('<Button-3>', pressed3)
frame1.bind('<Double 1>', double_click)
 
frame1.pack()
 
mainloop()

Producción: 
 

  
Código n. ° 3: vinculación de los botones del teclado con la ventana raíz (ventana principal de tkinter). 
 

Python3

# Import all files from
# tkinter and overwrite
# all the tkinter files
# by tkinter.ttk
from tkinter import *
from tkinter.ttk import *
 
# function to be called when
# keyboard buttons are pressed
def key_press(event):
    key = event.char
    print(key, 'is pressed')
 
# creates tkinter window or root window
root = Tk()
root.geometry('200x100')
 
# here we are binding keyboard
# with the main window
root.bind('<Key>', key_press)
 
mainloop()

Producción: 
 

Nota: Cuando vinculamos los botones del teclado con la ventana de tkinter, cada vez que presionemos caracteres especiales solo obtendremos espacio mientras que en el caso de letras y números obtendremos valores reales (en la string).
 

Publicación traducida automáticamente

Artículo escrito por sanjeev2552 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *