回答編集履歴
1
追記
test
CHANGED
@@ -30,6 +30,170 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
+
> 予め定めたパスワード(例えば 13579)と一致したらIF構文で次のプロセスへ進み、間違っていたらelseで終了にしたいのです。
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
次のプロセスという部分がよく分かりませんでしたが。
|
38
|
+
|
39
|
+
やりたいことと回答を反映したサンプルコードです、ご参考まで。
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
```Python
|
44
|
+
|
45
|
+
# -*- coding: utf-8 -*-
|
46
|
+
|
47
|
+
from tkinter import *
|
48
|
+
|
49
|
+
from tkinter import ttk
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
root = Tk()
|
54
|
+
|
55
|
+
root.title('Entry Test')
|
56
|
+
|
57
|
+
# Tk()を呼び出し後に使用可能、クリックイベントから参照するために、この位置で宣言
|
58
|
+
|
59
|
+
username = StringVar()
|
60
|
+
|
61
|
+
email = StringVar()
|
62
|
+
|
63
|
+
password = StringVar()
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
# OKボタンをクリック時のイベント
|
70
|
+
|
71
|
+
def ok_click():
|
72
|
+
|
73
|
+
if not (password.get() == "13579"):
|
74
|
+
|
75
|
+
# 画面を終了=root.mainloop()の次の行から実行再開
|
76
|
+
|
77
|
+
root.quit()
|
78
|
+
|
79
|
+
return
|
80
|
+
|
81
|
+
# 一致したなら
|
82
|
+
|
83
|
+
print("Done")
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
def main():
|
90
|
+
|
91
|
+
root.resizable ( False, False )
|
92
|
+
|
93
|
+
frame1 = ttk.Frame ( root, padding=10 )
|
94
|
+
|
95
|
+
frame1.grid ()
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
label1 = ttk.Label ( frame1, text='Username', padding=(5, 2) )
|
100
|
+
|
101
|
+
label1.grid ( row=0, column=0, sticky=E )
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
label2 = ttk.Label ( frame1, text='Email', padding=(5, 2) )
|
106
|
+
|
107
|
+
label2.grid ( row=1, column=0, sticky=E )
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
label3 = ttk.Label ( frame1, text='Password', padding=(5, 2) )
|
112
|
+
|
113
|
+
label3.grid ( row=2, column=0, sticky=E )
|
114
|
+
|
115
|
+
|
116
|
+
|
117
|
+
# Username Entry
|
118
|
+
|
119
|
+
username_entry = ttk.Entry (
|
120
|
+
|
121
|
+
frame1,
|
122
|
+
|
123
|
+
textvariable=username,
|
124
|
+
|
125
|
+
width=30 )
|
126
|
+
|
127
|
+
username_entry.grid ( row=0, column=1 )
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
# Email Entry
|
132
|
+
|
133
|
+
email_entry = ttk.Entry (
|
134
|
+
|
135
|
+
frame1,
|
136
|
+
|
137
|
+
textvariable=email,
|
138
|
+
|
139
|
+
width=30 )
|
140
|
+
|
141
|
+
email_entry.grid ( row=1, column=1 )
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
# Password Entry
|
146
|
+
|
147
|
+
password_entry = ttk.Entry (
|
148
|
+
|
149
|
+
frame1,
|
150
|
+
|
151
|
+
textvariable=password,
|
152
|
+
|
153
|
+
width=30,
|
154
|
+
|
155
|
+
show='*' )
|
156
|
+
|
157
|
+
password_entry.grid ( row=2, column=1 )
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
frame2 = ttk.Frame ( frame1, padding=(0, 5) )
|
162
|
+
|
163
|
+
frame2.grid ( row=3, column=1, sticky=W )
|
164
|
+
|
165
|
+
button1 = ttk.Button ( frame2, text='OK', command=ok_click)
|
166
|
+
|
167
|
+
button1.pack ( side=LEFT )
|
168
|
+
|
169
|
+
button2 = ttk.Button ( frame2, text='Cancel', command=quit )
|
170
|
+
|
171
|
+
button2.pack ( side=LEFT )
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
root.mainloop()
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
print(password.get())
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
if __name__ == '__main__':
|
186
|
+
|
187
|
+
main()
|
188
|
+
|
189
|
+
```
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
---
|
194
|
+
|
195
|
+
|
196
|
+
|
33
197
|
> 他のライブラリーで
|
34
198
|
|
35
199
|
|
@@ -46,7 +210,7 @@
|
|
46
210
|
|
47
211
|
あってもサンプルコードか動かないサンプルコード。
|
48
212
|
|
49
|
-
必然的に英語情報を当たる必要があ
|
213
|
+
必然的に2次情報(誰かのサンプルを見て初心者がQiitaに記事を書いて見ました系)か英語の1次情報を当たる必要があります。
|
50
214
|
|
51
215
|
0. 解説内容が他言語でGUIアプリを作成した事がある人向けの内容。
|
52
216
|
|