0

私のゲームでは、次__init__のように 7 つのエントリ ボックスのセットを作成する関数があります。

self.string1 = StringVal()
self.entry1 = Entry(frame, textvariable = self.string1).grid(row = 4, column = 1, sticky = W)

これをさらに 6 回コピーします。これは機能します。ただし、ゲームの最後に、オンラインでいくつかの場所を見つけたこのコードを使用して、エントリ ボックスのテキストを削除したいと思います。

self.entry1.delete(0, END)

私はまた、私が見つけた他のものを使用してみました:

if self.entry1.get():
    self.entry1.delete(0, END)

これらはどちらもそれself.entry1NoneTypeオブジェクトであり、メソッド.get().delete(). 試しに とself.entry1.get()などを代用self.entry1.delete(0,END)してみました。これらのどちらも機能しませんでした。私は自分が間違っていることを理解していません。ご協力いただきありがとうございます!self.string1.get().delete(0, END).delete(0.0, END)

4

1 に答える 1

2

このようなことをすると:

self.foo = Button(...).grid(...)

... に格納されるのself.fooは、 への呼び出しの結果ですgrid()。これは常にNone. 作成されたウィジェットへの参照を保存するには、ウィジェットの作成を loyout から分離する必要があります。

于 2013-02-14T00:32:35.170 に答える