Maison  >  Article  >  développement back-end  >  Pourquoi mes widgets Tkinter sont-ils stockés comme Aucun ?

Pourquoi mes widgets Tkinter sont-ils stockés comme Aucun ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-26 03:20:27155parcourir

 Why are my Tkinter Widgets Stored as None?

Pourquoi mes widgets Tkinter sont stockés comme Aucun

Dans ce cas, vous rencontrez un problème où vos widgets Tkinter sont stockés comme Aucun dans un tableau. Lorsque vous appelez les widgets, ils ne sont pas disponibles.

Comprendre le problème

Les méthodes Tkinter Grid, Pack et Place sont des opérations sur place et ne renvoient toujours aucun. Par conséquent, tenter d'appeler ces méthodes sur la même ligne que la création du widget entraînera l'attribution de None à la variable du widget.

Solution

Pour résoudre ce problème, divisez la création du widget et l'appel de méthode dans des lignes séparées :

<code class="python"># Create the widget
button = Button(...)

# Call the grid method
button.grid(...)

# Pack method
button.pack(...)

# Place method
button.place(...)</code>

Application à votre code

Dans votre code, modifiez la création du widget et les appels de méthode comme suit :

<code class="python">b[c + (r * 10)] = Button(f, text=chr(97 + c + (r * 10)), command=lambda a=c + (r * 10): color(a), borderwidth=1, width=5, bg="white")
b[c + (r * 10)].grid(row=r, column=c)</code>

Désormais, vos widgets seront accessibles et répondront correctement lorsque vous interagissez avec l'interface graphique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn