es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Problema con el tema Tkinter ttk al cambiar entre claro y oscuro (la interfaz de usuario cambia automáticamente de escala)

Estoy utilizando Python y Tkinter para la interfaz gráfica de usuario. Tengo una función que utiliza switch y ttk para alternar entre el modo claro y oscuro:

def CambiadorTema():
    if screen.tk.call("ttk::style", "theme", "use") == "sun-valley-dark":
        # Establecer tema claro
        screen.tk.call("set_theme", "light")
    else:
        # Establecer tema oscuro
        screen.tk.call("set_theme", "dark")

Pero cuando hago clic en el interruptor, toda la interfaz de usuario se escala automáticamente un poco:

Modo claro

Modo oscuro

Aumentará de tamaño si uso pestañas o tablas en ttk Tkinter, y no disminuirá de tamaño cuando cambie al modo claro, aumentará cada vez más cuando haga clic en el botón de cambio de tema:

def cambiar_tema():
    # NOTA: El nombre real del tema es sun-valley-<modo>
    if root.tk.call("ttk::style", "theme", "use") == "sun-valley-dark":
        # Establecer tema claro
        root.tk.call("set_theme", "light")
    else:
        # Establecer tema oscuro
        root.tk.call("set_theme", "dark")

Sin cambio

Primer cambio

Segundo cambio

Tercer cambio

Cuarto cambio

No sé cómo solucionar esto. Agradecería mucho si alguien puede recomendarme cómo mejorar esto. ¡Gracias!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Pregunta

    ¿Cuál es el problema que enfrenta el usuario con su GUI al cambiar entre el modo claro y oscuro utilizando Python y Tkinter, y cómo está intentando resolverlo?

    Respuesta

    El usuario se enfrenta a un problema en el que su GUI se escala automáticamente un poco cada vez que cambia entre el modo claro y oscuro utilizando Python y Tkinter. Este problema es más notable cuando se utilizan pestañas o tablas en ttk Tkinter, y la escala no vuelve al tamaño original al volver al modo claro. La solución intentada por el usuario implica el uso de una función con switch y ttk para cambiar entre el modo claro y oscuro. Sin embargo, esto no resuelve el problema de la escala, que sigue aumentando cada vez que se hace clic en el botón de cambio de tema. El usuario está buscando recomendaciones sobre cómo mejorar su código y solucionar este problema.

Comments are closed.