Foros Python

Versión completa: Obtener fila/columna sin seleccionar la palabra(text)
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola Francisco ¿ cómo estás?, te comento lo que necesito lograr,
tengo un widget TEXT y obtengo la palabra después de pulsar <space>
(o sea sin seleccionarla) con el código que dejo a continuación logro
obtener la palabra, pero no sé cómo puedo hacer para conseguir
fila/columna de inicio y final de la misma.-
Para que no te hagas algún prejuicio, el text es un bloc de notas con
corrector ortográfico y necesito esas coordenadas por si quiero
reemplazar la palabra con error(es) por la correcta.-

Código:
import tkinter as tk

win = tk.Tk()

text = tk.Text(win)
text.insert("end", "Arequito")
text.pack()
text.focus()

def get_word(event=None):
    word = text.get("insert wordstart", "insert wordend")
    if word in " \n":
        word = text.get("insert -1c wordstart", "insert -1c wordend")
    print(word)

text.bind("<space>", get_word)

win.mainloop()

Slds. Daniel ☕☕☕
Hola, Daniel.

Creo que se podría hacer:

Código:
word_index = text.index("insert -1c wordstart")

Saludos
Hola Francisco, ¿ cómo estás?, gracias funciona a la perfección.-
Aunque me parece que lo voy a tener que hacer con <doble clic>,
ya que con <space> se pone muy celoso, muy pesado, ¿se entiende?.-

Slds. Daniel ☕☕☕
Todo bien, Daniel.  Smile

Tal vez lo podrías hacer con un menú contextual, como en Word y otros procesadores de texto. Algo así, pero con la palabra sugerida:

[Imagen: caja-de-texto-tk.png]

Referencia: https://recursospython.com/codigos-de-fu...tar-pegar/.

Saludos
Hola Francisco, es buena tu idea, pero lo estoy optimizado
y parece funcionar, veremos, saludos.-

Slds. Daniel ☕☕☕