J'ai rencontré deux façons différentes de créer une barre de menus: importer tkinter comme tk window = tk.Tk () menu_bar = tk.Menu () ■ window.config (menu = menu_bar) # 2 window.mainloop () importer tkinter comme tk ...

0
Nameless 17 mars 2021 à 02:19

1 réponse

Meilleure réponse

Quelle est la différence entre ces lignes de code?

Il fait la même chose (sauf les importations. Avec from tkinter import Menu, vous importez spécifiquement Menu et rien d'autre depuis tkinter. Mais dans le premier exemple, vous importez tout {{X3 }} et vous pouvez faire référence à tkinter.Menu comme tk.Menu. Mais dans le deuxième exemple, il vous suffit de dire Menu.

Notez que dans le deuxième exemple, vous pouvez toujours utiliser tk.Menu ainsi que Menu. Ainsi, la deuxième importation est rendue inutile et peut être supprimée. Il vaut mieux suivre le premier exemple.


Comme mentionné par AST, si vous dites Menu(), une instance existante de Tk() sera transmise implicitement comme argument maître. Mais si vous dites Menu(win), vous passez win explicitement. Il est toujours recommandé de passer l'argument parent explicitement lorsque vous travaillez avec plusieurs fenêtres afin de ne pas causer de confusion.

2
Cool Cloud 16 mars 2021 à 23:39