回答編集履歴
1
問題の原因に言及、mainloopが複数ある場合の問題点
test
CHANGED
@@ -22,6 +22,15 @@
|
|
22
22
|
ただし、mainloopを抜けて再度 tk.Tk() を作るという事は、
|
23
23
|
ウィンドウ作成の度に tkinter ライブラリ全体が終了・初期化されるという事を留意しておいてください。
|
24
24
|
効率化の為には、初期化は一度のみにして、ウィンドウが複数必要であれば Toplevel を用いるように実装します。
|
25
|
+
|
26
|
+
追記: 問題の原因
|
27
|
+
恐らく2つめのウィンドウで `user.entry.get()` みたいな事をして、
|
28
|
+
以前入力された値を参照したい場合、
|
29
|
+
mainloop() が終了しているので、以前の UI 内の値を参照出来ないというのが、
|
30
|
+
mainloopが複数ある場合の気を付けなければならない点。
|
31
|
+
|
32
|
+
mainloop 終了前に値を別の場所の保存しておくのは解決策の一つですが、
|
33
|
+
ウィンドウ毎にmainloopを終了せずに、初期化・終了は1度で済ませる方法もあります。
|
25
34
|
|
26
35
|
----
|
27
36
|
お勧めできる解決策は、入力値を返すダイアログを使った実装方法です。
|