Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

220
Views
¿Hay alguna forma de mostrar correctamente los bordes de las etiquetas en tkinter?

Estoy trabajando en una herramienta de marcado de texto usando tkinter. Se basa principalmente en el uso de varios métodos de etiquetas en el widget de texto. Sin embargo, lo que me está volviendo loco es mi incapacidad para obtener bordes correctos alrededor del texto etiquetado si hay etiquetas superpuestas.

Considere el siguiente fragmento de texto, etiquetado con dos etiquetas diferentes que se muestran entre corchetes:
[my [example]]

Cuando uso .tag_configure("outer", borderwidth=1, relief="solid") , quiero obtener un borde alrededor de "mi ejemplo", sin embargo, obtengo dos bordes: alrededor de "mi" y alrededor de "ejemplo" si el color de fondo se establece para "ejemplo". Si no hay color de fondo involucrado, funciona como quiero. ¡Pero realmente necesito la capacidad de cambiar los colores de fondo!

Ejemplo de trabajo mínimo:

 import tkinter as tk class Application(tk.Frame): def __init__(self, master): super().__init__(master) self.grid(row=0, column=0, sticky=tk.N+tk.S+tk.W+tk.S) self.text = tk.Text(self) self.text.insert("1.0", "my example") self.text.tag_add("outer", "1.0", "end-1c") # "my example" self.text.tag_configure("outer", borderwidth=1, relief="solid") self.text.tag_add("inner", "1.3", "end-1c") # "example" self.text.tag_configure("inner", background="white") # white to see the problem better self.text.grid(row=0, column=0) if __name__ == "__main__": root = tk.Tk() app = Application(root) app.mainloop()

Pregunta: ¿hay alguna manera (posiblemente pirateada) de obtener bordes únicos alrededor de tales etiquetas "externas"?

Lo que quiero:|mi ejemplo|

Lo que consigo:|mi |ejemplo|

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

La única solución que conozco es incrustar otro Texto con un borde en el Texto principal usando Text.window_create() y configurar sus etiquetas para los colores internos.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!