今日問題が発生し、すぐに解決されました。記録:
func関数はテキストを更新し、テキストを更新した後にテキストを読みたいのですが、失敗します。読み取られるのは履歴データです。
from tkinter import *
win=Tk()
#各种程序
text(win)
#各种程序
Button(win,command=func)
win.mainloop()
テキストのバッファリングを行う前に、次の定義があります。入力テキストが特定の長さを超えると、ファイルに書き込まれる前に閉じられるか、強制的に更新されます。目的はスピードマッチングです。
数秒で理解できます。多分TKもこのメカニズムを持っています。
クエリ:BUTTONの実行時に、システムはさまざまなコントロールを更新しません。簡単に言えば、読み取り専用であり、書き込みは行いません。次に、ボタンが終了した後、メインループプロセスが実行されると、さまざまな制御値が一度に更新されます。
強制更新コマンドを照会します。コマンドが非常に単純であることがわかりました。
win.update()
その中で、winはハンドルであり、Tk()であり、私のものとは異なる場合があります。
問題が解決しました。