回答編集履歴

5

不要な行を削除

2022/09/13 03:12

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -52,8 +52,6 @@
52
52
 
53
53
  btn={}
54
54
 
55
- after を使ったサンプルコード:
56
-
57
55
  for i in range(6):
58
56
  btn[i]=tk.Button(canvas, text="", width=25,font=("MSゴシック", "16"))
59
57
  btn[i+6]=tk.Button(canvas, text="", width=25,font=("MSゴシック", "16"))

4

説明追記

2022/09/13 03:08

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -32,6 +32,8 @@
32
32
  ```python
33
33
  btn = {}
34
34
  ```
35
+
36
+ afterを使ったサンプルコード:
35
37
 
36
38
  ```py
37
39
  import tkinter as tk

3

afterを使ったサンプルコードを追記

2022/09/13 03:06

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -33,3 +33,47 @@
33
33
  btn = {}
34
34
  ```
35
35
 
36
+ ```py
37
+ import tkinter as tk
38
+
39
+ root = tk.Tk()
40
+ label = tk.Label(root, text="-")
41
+ label.pack()
42
+ root.geometry('1920x1080')
43
+ canvas = tk.Canvas(
44
+ root,
45
+ width = 1920, # 水平サイズ
46
+ height = 500, # 垂直サイズ
47
+ )
48
+ canvas.pack() # 配置
49
+
50
+
51
+ btn={}
52
+
53
+ after を使ったサンプルコード:
54
+
55
+ for i in range(6):
56
+ btn[i]=tk.Button(canvas, text="", width=25,font=("MSゴシック", "16"))
57
+ btn[i+6]=tk.Button(canvas, text="", width=25,font=("MSゴシック", "16"))
58
+ btn[i+12]=tk.Button(canvas, text="", width=25,font=("MSゴシック", "16"))
59
+ btn[i+18]=tk.Button(canvas, text="", width=25,font=("MSゴシック", "16"))
60
+ btn[i].grid(row=0,column=i)
61
+ btn[i+6].grid(row=1,column=i)
62
+ btn[i+12].grid(row=2,column=i)
63
+ btn[i+18].grid(row=3,column=i)
64
+
65
+ def close_window():
66
+ root.destroy()
67
+
68
+ button = tk.Button(text = "Click and Quit", command = close_window)
69
+ button.pack()
70
+
71
+ def update():
72
+ for i in range(24):
73
+ btn[i]['bg']='white'
74
+ root.after(100, update)
75
+
76
+ root.after(100, update)
77
+ root.mainloop()
78
+ ```
79
+

2

説明補足

2022/09/12 23:41

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -3,6 +3,8 @@
3
3
  > whileとupdateで代用する理由はウィンドウの内容を条件によって更新したいからです。
4
4
 
5
5
  afterを使ってイベントドリブンな処理にすることを検討してみてはいかがでしょうか?
6
+ mainloopを使ってもウィンドウの内容を条件によって更新することはできますので。
7
+
6
8
 
7
9
  それと、
8
10
 

1

説明補足

2022/09/12 23:40

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  > whileとupdateで代用する理由はウィンドウの内容を条件によって更新したいからです。
4
4
 
5
- afterを使って定期実行できなか?
5
+ afterを使ってイベントドリブンな処理することを検討してみてはかがしょうか?
6
+
7
+ それと、
6
8
 
7
9
  ```python
8
10
  for i in range(18):