teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

誤字修正

2020/06/02 07:52

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -18,7 +18,7 @@
18
18
  補足追記:
19
19
  StringVar() の親を指定しない場合、モジュール内グローバルの_default_root が適応されるのですが、
20
20
  複数回 Tk() のインスタンスを作って破棄している為、
21
- destroy時にこの _default_root が使えなくなってしまいます。=>2回目以降正常にでき成り理由
21
+ destroy時にこの _default_root が使えなくなってしまいます。=>2回目以降正常にできない理由
22
22
 
23
23
  上記の回避策は、親を明示的に与える事で回避できたのだと思いますが、
24
24
  根本的な対策にはなりません。

3

説明補足

2020/06/02 07:52

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -18,7 +18,7 @@
18
18
  補足追記:
19
19
  StringVar() の親を指定しない場合、モジュール内グローバルの_default_root が適応されるのですが、
20
20
  複数回 Tk() のインスタンスを作って破棄している為、
21
- destroy時にこの _default_root が使えなくなってしまいます。
21
+ destroy時にこの _default_root が使えなくなってしまいます。=>2回目以降正常にでき成り理由
22
22
 
23
23
  上記の回避策は、親を明示的に与える事で回避できたのだと思いますが、
24
24
  根本的な対策にはなりません。

2

説明補足

2020/06/02 07:52

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -16,7 +16,7 @@
16
16
  この変更により2回目以降のシート名一覧の表示を確認。
17
17
 
18
18
  補足追記:
19
- StringVar() の親を指定しない場合、_default_root が適応されるのですが、
19
+ StringVar() の親を指定しない場合、モジュール内グローバルの_default_root が適応されるのですが、
20
20
  複数回 Tk() のインスタンスを作って破棄している為、
21
21
  destroy時にこの _default_root が使えなくなってしまいます。
22
22
 

1

説明補足

2020/06/02 07:51

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -15,7 +15,14 @@
15
15
  どうしてこれで直るのかうまく説明できませんが、
16
16
  この変更により2回目以降のシート名一覧の表示を確認。
17
17
 
18
+ 補足追記:
19
+ StringVar() の親を指定しない場合、_default_root が適応されるのですが、
20
+ 複数回 Tk() のインスタンスを作って破棄している為、
21
+ destroy時にこの _default_root が使えなくなってしまいます。
18
22
 
23
+ 上記の回避策は、親を明示的に与える事で回避できたのだと思いますが、
24
+ 根本的な対策にはなりません。
25
+
19
26
  ----
20
27
  修正方法(根本的な対策)
21
28