回答編集履歴

1

説明を追記

2022/11/27 04:40

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -38,13 +38,19 @@
38
38
 
39
39
 
40
40
  ```diff
41
- + root.update()
41
+ + root.update()
42
42
  + print(tree_frame.winfo_width())
43
43
  + print(tree.winfo_width())
44
44
  + print(scrollbar_x.winfo_width())
45
45
 
46
46
  root.mainloop()
47
47
  ```
48
+ 補足:
49
+ 実際は mainloop 後でレイアウト情報が反映されるので、update により情報を得る前に反映させる。
50
+ update をせずにレイアウト後の情報を得る winfo_reqwidth もありますが、
51
+ 今回のケースではスクロールバーの幅が決まるのがツリーのスクロールイベント後なので、
52
+ update 後の実際の winfo_width 情報を参照します。
53
+
48
54
 
49
55
  grid_columnconfigure で伸縮設定をしてない場合、
50
56
  ツリーとスクロールバーの横幅が 2003 (20x100 + 余白枠線) と