回答編集履歴

7

コード抜け修正

2020/04/15 10:16

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -36,6 +36,8 @@
36
36
 
37
37
  entry = getattr(self, "entry{}".format(entry_idx))
38
38
 
39
+ entry.configure(state='normal')
40
+
39
41
  entry.delete(0, 'end')
40
42
 
41
43
  entry.insert('end', datum)
@@ -60,6 +62,8 @@
60
62
 
61
63
  datum = data[idx]
62
64
 
65
+ entry.configure(state='normal')
66
+
63
67
  entry.delete(0, 'end')
64
68
 
65
69
  entry.insert('end', datum)
@@ -82,7 +86,7 @@
82
86
 
83
87
 
84
88
 
85
- ```
89
+ ```python
86
90
 
87
91
  name = tk.StringVar(parent)
88
92
 

6

誤字修正

2020/04/15 10:16

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -1,6 +1,6 @@
1
- getattrで 添字から目的の entry を得ることができます。
1
+ getattrで 添字から目的の entry を得ることができます。
2
2
 
3
- (クラス以外であれば globals()やlocals() の辞書から添字→目的の変数を得られる)
3
+ (クラス以外であれば globals()やlocals() の辞書から添字→目的の変数を得られる)
4
4
 
5
5
 
6
6
 

5

コード修正

2020/04/15 07:30

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -88,9 +88,9 @@
88
88
 
89
89
  addr = tk.StringVar(parent)
90
90
 
91
- entry = tk.Entry(parent, textvar=name, state="readonly")
91
+ tk.Entry(parent, textvar=name, state="readonly").pack()
92
92
 
93
- entry = tk.Entry(parent, textvar=addr, state="readonly")
93
+ tk.Entry(parent, textvar=addr, state="readonly").pack()
94
94
 
95
95
 
96
96
 

4

説明補足

2020/04/15 05:21

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -67,3 +67,35 @@
67
67
  entry.configure(state='readonly')
68
68
 
69
69
  ```
70
+
71
+
72
+
73
+ ----
74
+
75
+ 追記:
76
+
77
+
78
+
79
+ 毎回 readonly 解除や delete/insert をしてますが、
80
+
81
+ tk.StringVar を使うと、readonly 時でも値を設定できます。
82
+
83
+
84
+
85
+ ```
86
+
87
+ name = tk.StringVar(parent)
88
+
89
+ addr = tk.StringVar(parent)
90
+
91
+ entry = tk.Entry(parent, textvar=name, state="readonly")
92
+
93
+ entry = tk.Entry(parent, textvar=addr, state="readonly")
94
+
95
+
96
+
97
+ name.set("NAME")
98
+
99
+ addr.set("ADDRESS")
100
+
101
+ ```

3

説明文捕捉

2020/04/15 05:20

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -48,7 +48,7 @@
48
48
 
49
49
 
50
50
 
51
- 多分、率直にリストと一緒に回す方がわかりやすい。
51
+ 多分、率直にzip()でリストと一緒に回す方がわかりやすい。
52
52
 
53
53
  ```
54
54
 

2

コード修正

2020/04/15 04:53

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -28,11 +28,11 @@
28
28
 
29
29
 
30
30
 
31
- slice_by_ichi = itemgetter(*ichi)
31
+ sliced_data = itemgetter(*ichi)(data)
32
32
 
33
33
 
34
34
 
35
- for entry_idx, datum in enumerate(slice_by_ichi(data), start=1):
35
+ for entry_idx, datum in enumerate(sliced_data, start=1):
36
36
 
37
37
  entry = getattr(self, "entry{}".format(entry_idx))
38
38
 
@@ -48,7 +48,7 @@
48
48
 
49
49
 
50
50
 
51
- 多分、率直にリストと一緒に回す方がわかりやすいです
51
+ 多分、率直にリストと一緒に回す方がわかりやすい。
52
52
 
53
53
  ```
54
54
 

1

コード修正

2020/04/15 04:52

投稿

teamikl
teamikl

スコア8664

test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
  for entry_idx, datum in enumerate(slice_by_ichi(data), start=1):
36
36
 
37
- entry = getattr(self, "entry{}".format(entry_idx)")
37
+ entry = getattr(self, "entry{}".format(entry_idx))
38
38
 
39
39
  entry.delete(0, 'end')
40
40