Tkinter GUI でエラー「AttributeError: NoneType object has noattribute」が発生します" 入力ボックスの内容を取得しようとしたとき。この問題に対処するには、そもそも、entryBox ウィジェットが None に設定されている理由を理解することが重要です。
Entry などのウィジェットで呼び出される Tkinter のグリッド、パック、およびプレイス関数は、None を返します。 a().b() のような式が Python で評価される場合、結果は b() の戻り値によって決まります。したがって、Entry(...).grid(...) は常に None を返します。
この問題は、Entry ウィジェットを 1 行に作成し、別の行に配置することで解決できます。変更されたコードは次のようになります。
entryBox = Entry(root, width=60) entryBox.grid(row=2, column=1, sticky=W)
この分離を実行することで、Entry オブジェクトをentryBox 変数に割り当て、期待どおりに配置します。このアプローチにより、レイアウトの可読性と保守性も向上し、グリッドとパックのステートメントを個別のブロックに編成できるようになります。
以上がTkinter エントリ ボックスが NoneType オブジェクトを返すのはなぜですか? AttributeError を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。