Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Menú <copiar> <cortar> y <pegar> en Python.-
#1
Hola Francisco, hola gente, ¿cómo están?, encontré en el blog de recursos python como hacer
un menú con <copiar>, <cortar> y <pegar> pero lo que ocurre es que está codificado con
base en clases y como soy nuevito en el tema no toque todavía el tema clases.-
Bueno, lo concreto es que desearía que me orienten para hacer lo mismo, pero en
programación básica.-
Desde ya muchas gracias y si lo desean me gustaría leer alguna base en que se
orienta la diferencia entre programación básica y clases(estaré en modo caradura Big Grin Big Grin Big Grin )

Slds. Daniel ☕☕☕
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-
Responder
#2
Hola, Daniel, ¿cómo estás?

Para que quede claro, estamos hablando de este artículo donde se muestra cómo añadir los menús que mencionás a una caja de texto (ttk.Entry): https://recursospython.com/codigos-de-fu...tar-pegar/. Se puede hacer perfectamente sin crear una clase. Acá no es estrictamente necesario, pero el código queda más organizado de esa manera, especialmente si necesitás varias cajas de texto distintas con sus respectivos menús, con la orientación a objetos toda la lógica va a quedar encapsulada dentro de un objeto. Sin crear una clase nueva se podría hacer así:

Código:
import tkinter as tk
from tkinter import ttk

    
def display_popup(event):
    menu.post(event.x_root, event.y_root)

def popup_copy():
    entry.event_generate("<<Copy>>")

def popup_cut():
    entry.event_generate("<<Cut>>")

def popup_paste():
    entry.event_generate("<<Paste>>")


root = tk.Tk()
entry = ttk.Entry(root)
menu = tk.Menu(entry, tearoff=False)
menu.add_command(label="Copiar", command=popup_copy)
menu.add_command(label="Cortar", command=popup_cut)
menu.add_separator()
menu.add_command(label="Pegar", command=popup_paste)
entry.bind("<Button-3>", display_popup)
entry.pack()
root.mainloop()

Te dejo un artículo introductorio a la orientación a objetos en Python: https://recursospython.com/guias-y-manua...a-objetos/.

Saludos
Responder
#3
Hola Francisco, estoy muy bien, si claro soy la misma persona.-
Gracias y ya trato de aplicarlo, lo necesito para un widget TEXT
espero que sea lo mismo para un entry o para otro widget de
texto.-
En cuanto a la POO luego de terminar el editor de texto con
corrector ortográfico(propio) voy a comenzar a intentar
comprenderla.-

Slds. Daniel ☕☕☕
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-
Responder
#4
Hola, Daniel.

No lo probé en un tk.Text, pero debería funcionar más o menos de la misma manera. Cualquier problema lo podés comentar acá mismo.

Saludos
Responder
#5
Hola Francisco, hola gente.-
Funciona de maravilla, gracias Francisco.-

Slds. Daniel ☕☕☕
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)