回答編集履歴
2
追記
answer
CHANGED
@@ -32,4 +32,17 @@
|
|
32
32
|
先程のetnry1.bind...の記述は残しておいても動きます。エンターキーと、↑↓で動くようになります。
|
33
33
|
```python
|
34
34
|
entry1 = tk.Spinbox(frame2,text="",width=10, from_ = 1, to = 1000, command=get_user_data)
|
35
|
+
```
|
36
|
+
連続で押すとどんどん入力欄に値が入るので、毎回消す場合は以下のようにget_user_dataの最初でdeleteを呼び出してください。
|
37
|
+
```python
|
38
|
+
def get_user_data(event=None):
|
39
|
+
"""利用者IDを取得し、データを反映する"""
|
40
|
+
entry2.delete('0', 'end')
|
41
|
+
entry3.delete('0', 'end')
|
42
|
+
entry4.delete('0', 'end')
|
43
|
+
entry5.delete('0', 'end')
|
44
|
+
try:
|
45
|
+
...
|
46
|
+
...
|
47
|
+
...
|
35
48
|
```
|
1
追記
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
root.mainloopの前に以下のコードを入れてください。
|
2
2
|
```python
|
3
3
|
|
4
|
-
def get_user_data(event):
|
4
|
+
def get_user_data(event=None):
|
5
5
|
"""利用者IDを取得し、データを反映する"""
|
6
6
|
try:
|
7
7
|
user_id = int(entry1.get())
|
@@ -24,6 +24,12 @@
|
|
24
24
|
entry1.bind('<Return>', get_user_data)
|
25
25
|
root.mainloop()
|
26
26
|
```
|
27
|
-
とりあえずですが、「利用者ID」欄に入力してエンター後にデータを取得する
|
27
|
+
とりあえずですが、「利用者ID」欄に入力してエンター後にデータを取得するサンプルです。
|
28
28
|
entry1.bind('<Return>', get_user_data) で、エンターを押すとget_user_data関数が呼ばれるようにしています。
|
29
|
-
姓、名、セイ、カナをプログラム上に直接記載して各入力欄にセットしていますが、この部分はデータベースから取り出した値にしてください。
|
29
|
+
姓、名、セイ、カナをプログラム上に直接記載して各入力欄にセットしていますが、この部分はデータベースから取り出した値にしてください。
|
30
|
+
|
31
|
+
もしSpinboxでの↑↓選択でユーザー情報を変更したいならば、entry1を以下のように変更し、get_user_data関数を以下のコードより前に移動してください。import tkinter as tkの下とかでも良いです。
|
32
|
+
先程のetnry1.bind...の記述は残しておいても動きます。エンターキーと、↑↓で動くようになります。
|
33
|
+
```python
|
34
|
+
entry1 = tk.Spinbox(frame2,text="",width=10, from_ = 1, to = 1000, command=get_user_data)
|
35
|
+
```
|