¿Cómo dejar de copiar, pegar y retroceder en el widget de texto en tkinter?

En este artículo, veremos cómo dejar de retroceder, copiar y pegar en el widget de texto en Tkinter .

Para deshabilitar copiar, pegar y retroceder en Tkinter un widget de texto, debe vincular el evento con un controlador de eventos, el enlace nos ayuda a crear aplicaciones GUI complejas que vinculan alguna tecla específica a las funciones, que se ejecutan cuando esa tecla es presionado.

Implementación paso a paso:

Paso 1: en primer lugar, importa la biblioteca Tkinter.

from tkinter import *

Paso 2: Ahora, crea una aplicación GUI usando Tkinter

app=Tk()

Paso 3: A continuación, dale dimensiones a la aplicación.

app.geometry("# Dimensions of the app")

Paso 4: Además, cree y muestre el widget de texto para la aplicación GUI.

text=Text(app, font="#Font-Style, #Font-Size")
text.pack(fill= BOTH, expand= True)

Paso 5: Además, vincule la tecla de pegar para que el usuario no pueda copiar nada cuando presiona Control-V juntos.

text.bind('<Control-v>', lambda _:'break')

Paso 6: Más tarde, vincule la tecla de copia para que el usuario no pueda copiar nada cuando seleccione y presione Control-C juntos.

text.bind('<Control-c>', lambda _:'break')

Paso 7: luego, vincule la tecla de retroceso para que el usuario no pueda regresar y borrar nada cuando presione el botón de retroceso. 

text.bind('<BackSpace>', lambda _:'break')

Paso 8: Finalmente, haz un bucle infinito para mostrar la aplicación en la pantalla.

app.mainloop()

Ejemplo:

Python3

# Python program to stop, copy, and backspace
# in a text widget in Tkinter
  
# Import the library tkinter
from tkinter import *
  
# Create a GUI widget
app=Tk()
  
# Set the geometry of the app
app.geometry("700x350")
  
# Create and display text field widget
text=Text(app, font="Calibri, 14")
text.pack(fill= BOTH, expand= True)
  
# Bind the paste key with the event handler
text.bind('<Control-v>', lambda _:'break')
  
# Bind the copy key with the event handler
text.bind('<Control-c>', lambda _:'break')
  
# Bind the backspace key with the event handler
text.bind('<BackSpace>', lambda _:'break')
  
# Make infinite loop for displaying app
# on the screen
app.mainloop()

Producción:

How to stop copy, paste, and backspace in text widget in tkinter?

 

Publicación traducida automáticamente

Artículo escrito por vin8rai 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 *