Requisito previo: Python-Tkinter
En este artículo, discutiremos cómo deshabilitar el enfoque de los widgets en el marco Tkinter. Para deshabilitar el enfoque, usamos la opción de enfoque dentro del widget y asignamos su valor a 0.
Implementación paso a paso:
Paso 1: importa Tkinter e inicializa la ventana de tkinter
Python3
# import tkinter import tkinter as tk # initialize a tkinter window root = tk.Tk() # Creating the geometry with width and height of 300px root.geometry("300x300") # creating the body loop root.mainloop()
Paso 2: Agrega algunos widgets a la aplicación
# Crear widget de botón
btn = tk.Button(root, text=”Button”) # inicializando el widget.
btn.pack() # llamando al widget en la aplicación
Código:
Python3
import tkinter as tk # initialize a tkinter window root = tk.Tk() # Creating the geometry with width and height of 300px root.geometry("300x300") # create a button btn = tk.Button(root, text ="I am button") btn.pack() # text widget txt = tk.Entry(root, width=10) txt.pack() # create a radio button rb = tk.Radiobutton(root, text ="I am radio button") rb.pack() # create a check button cb = tk.Checkbutton(root, text = "I am check button") cb.pack() root.mainloop()
Producción:
Aquí notamos que nos enfocamos en cada widget después de presionar la tecla TAB.
Paso 3: Agregar la funcionalidad de deshabilitar el enfoque a nuestro programa.
Usamos el argumento takefocus para deshabilitar el enfoque
Syntax: takefocus = 0 # for button btn = tk.Button(root, text="Button", takefocus=0)
El enfoque del programa es deshabilitar el enfoque de los widgets con el argumento help takefocus . Ponemos su valor a 0 para hacerlo. Otros widgets tienen su foco habilitado.
Código:
Python3
import tkinter as tk root = tk.Tk() root.geometry("300x300") # creating button btn = tk.Button(root, text ="I am button") btn.pack() # takefocus is set to 0 for disabling the TAB key # focus in widget btn_no_focus = tk.Button(root, text ="I am not focused", takefocus = 0,foreground = "red") btn_no_focus.pack() # created an entry widget with width 10 txt = tk.Entry(root, width = 10) txt.pack() # creating a entry widget with width 10 and focus is # 0 hence disabled txt = tk.Entry(root, width = 10, takefocus = 0) txt.pack() # Creating radiobutton rb = tk.Radiobutton(root, text ="I am radio button") rb.pack() # putting an takefocus=0 for disabling focus rb_unfocus = tk.Radiobutton(root, text ="I am unfocused radio button", takefocus = 0,foreground = "red") rb_unfocus.pack() # creating the checkbutton cb = tk.Checkbutton(root, text = "I am check button") cb.pack() cb_unfocused = tk.Checkbutton(root, text = "I am unfocused check button", takefocus = 0, foreground = "red") cb_unfocused.pack() root.mainloop()
Producción:
Los widgets de color rojo tienen takefocus=0 y otros no tienen este argumento. El color rojo solo se usa para mayor claridad, también puede eliminarlo.
Publicación traducida automáticamente
Artículo escrito por shiv_ka_ansh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA