Comment supprimer la ligne pointillée du Menu? Tkinter - Python

Bonjour,

j’ai mis des menus dans mon appli, mais ils ont des pointillés en haut. On peut donc les déplacer. J’avais vu qq part qu’on pouvait ôter ces pointillés. Impossible de retrouver.
C’est pas l’option tearoff= 0 qui ne fonctionne pas avec 3.11. ça n’empêche rien, mais c’est moins joli…

mon code :

# zone de création des menus
menu = Menu(fenetre_principale)
fenetre_principale.config(menu=menu)
filemenu = Menu(menu)
menu.add_cascade(label="Choisir une base  de données", menu=filemenu)  # le titre 'menu' de la barre de menus
filemenu.add_command(label="Choisir la base de données", command=selection_base)
filemenu.add_separator()
filemenu.add_command(label="Quitter l' application", command=fenetre_principale.destroy)

import_file = Menu(menu)
menu.add_cascade(label="Choisir des fichiers",menu=import_file)
import_file.add_command(label="Choisir un répertoire à scanner", command=repertoire_de_travail)
import_file.add_command(label="Ajouter des fichiers pdf")
import_file.add_command(label="Ajouter des fichiers TXT")

Si vous avez, merci d’avance.

jym

Définir l’option tearoff du menu à False (ou 0) comme suite:

menu = Menu(fenetre_principale, tearoff=False)

Pour supprimer la ligne pointillée, comme montré dans l’image ci-dessous :

menu-python

Essayer d’utiliser la méthode option_add pour définir l’option *tearOff de root sur False. Il suffit d’ajouter cette ligne avant root.mainloop() :

root.option_add('*tearOff',FALSE)
root.mainloop()

Bonjour et merci de la réponse.
Mon erreur était de mettre le tearoff à la première ligne seulement et à priori ça ne fait rien.
il faut mettre le tearoff à chaque menu.

le nouveau code complet :

# zone de création des menus
menu = Menu(fenetre_principale)
fenetre_principale.config(menu=menu)
filemenu = Menu(menu, tearoff=False)
menu.add_cascade(label="Application", menu=filemenu)  # le titre 'menu' de la barre de menus
filemenu.add_command(label="Quitter l' application", command=fenetre_principale.destroy)

base_menu= Menu(menu, tearoff=False)
menu.add_cascade(label="Base de données", menu=base_menu)
base_menu.add_command(label="Choisir la base de données", command=selection_base)

repertoire_menu= Menu(menu, tearoff=False)
menu.add_cascade(label="Répertoire à scanner", menu=repertoire_menu)
repertoire_menu.add_command(label="choisir un répertoire à scanner", command=repertoire_de_travail)


import_file = Menu(menu, tearoff=False)
menu.add_cascade(label="Types de fichiers PDF ou TXT",menu=import_file )
import_file.add_command(label="Ajouter des fichiers pdf", command=traitement_pdf)
import_file.add_command(label="Ajouter des fichiers TXT", command= traitement_txt)

ce qui donne

parfait!

Merci.

Bonjour,

ça marche aussi, avec la mm remarque que dans ma réponse précédente. A mettre à chaque menu.

Bonne journée.

@jym83 Bonne courage :slightly_smiling_face: