Python >> Tutoriel Python >  >> Python

Suppression de la ligne pointillée de l'onglet Ttk Notebook

Vous pouvez supprimer cette marque de focus en modifiant les sous-éléments du widget d'onglet. Les widgets Ttk sont décomposés en sous-éléments. La disposition de ces éléments est décrite par layout méthode (ou dans un paramètre de mise en page de theme_create ). Voici une commande pour supprimer les marques de mise en page (vous pouvez l'appliquer directement à Tab, ou à tout autre thème dérivé), la partie commentée est ce qui a conduit précédemment à dessiner le focus (récupéré via style.layout("Tab") )

style.layout("Tab",
[('Notebook.tab', {'sticky': 'nswe', 'children':
    [('Notebook.padding', {'side': 'top', 'sticky': 'nswe', 'children':
        #[('Notebook.focus', {'side': 'top', 'sticky': 'nswe', 'children':
            [('Notebook.label', {'side': 'top', 'sticky': ''})],
        #})],
    })],
})]
)

Une façon plus compliquée pourrait être de modifier la couleur de cette marque de mise au point, par exemple pour la dessiner de la même couleur que l'arrière-plan

style.configure("Tab", focuscolor=style.configure(".")["background"])