teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

試した事を追記

2020/09/21 10:10

投稿

fuji36_om
fuji36_om

スコア8

title CHANGED
@@ -1,1 +1,1 @@
1
- チェックボックス部分をトグルボタンに置き換えて現在の機構を再現したい。
1
+ チェックボックス部分を表示の切り替わるボタンに置き換えて現在の機構を再現したい。
body CHANGED
@@ -106,4 +106,94 @@
106
106
  t_btn.pack(pady=5)
107
107
  root.mainloop()
108
108
 
109
+ ```
110
+ ### 試したこと(9/21追記)
111
+ ボタンに置き換えと表示の切り替えはできるようになったが、機能の切り替えがうまくいかない。
112
+ btn_click1~3にtoggle()が切り替わった情報を入れる方法がわからない。
113
+
114
+
115
+ ```python
116
+ #tkinterのインポート
117
+ import tkinter as tk
118
+
119
+ # ウィンドウを作成
120
+ root = tk.Tk()
121
+ root.title("Hello, World!")
122
+ root.geometry("500x300")
123
+
124
+ b = tk.Label(text="コントロール画面")
125
+ b.pack()
126
+
127
+ def btn_click1():
128
+ if(toggle() == tog[0]):
129
+ print('txt_1.(/・ω・)/にゃー!')
130
+ txt_1.insert(tk.END,'(/・ω・)/にゃー!')
131
+ else:
132
+ print('txt_1.(」・ω・)」うー!')
133
+ txt_1.insert(tk.END,'(」・ω・)」うー!')
134
+
135
+ def btn_click2():
136
+ if(toggle() == tog[0]):
137
+ print('txt_2.(/・ω・)/にゃー!')
138
+ txt_2.insert(tk.END,'(/・ω・)/にゃー!')
139
+ else:
140
+ print('txt_2.(」・ω・)」うー!')
141
+ txt_2.insert(tk.END,'(」・ω・)」うー!')
142
+
143
+ def btn_click3():
144
+ if(toggle() == tog[0]):
145
+ print('txt_3.(/・ω・)/にゃー!')
146
+ txt_3.insert(tk.END,'(/・ω・)/にゃー!')
147
+ else:
148
+ print('txt_3.(」・ω・)」うー!')
149
+ txt_3.insert(tk.END,'(」・ω・)」うー!')
150
+
151
+
152
+ def clear():
153
+ txt_1.delete(0,tk.END)
154
+ txt_2.delete(0,tk.END)
155
+ txt_3.delete(0,tk.END)
156
+
157
+
158
+ def toggle(tog=[0]):
159
+ tog[0] = not tog[0]
160
+ if tog[0]:
161
+ t_btn. config(text='(/・ω・)/にゃー!')
162
+ button1.config(text='(/・ω・)/にゃー!')
163
+ button2.config(text='(/・ω・)/にゃー!')
164
+ button3.config(text='(/・ω・)/にゃー!')
165
+ return not tog[0]
166
+
167
+ else:
168
+ t_btn. config(text='(」・ω・)」うー!')
169
+ button1.config(text='(」・ω・)」うー!')
170
+ button2.config(text='(」・ω・)」うー!')
171
+ button3.config(text='(」・ω・)」うー!')
172
+ return not tog[0]
173
+
174
+
175
+ t_btn = tk.Button(text="(」・ω・)」うー!", width=20, command=toggle)
176
+ t_btn.place(width=100,x=30, y=30)
177
+
178
+
179
+ button1 = tk.Button(root, text='(」・ω・)」うー!', command=btn_click1)
180
+ button1.place(width=80, x=30, y=80)
181
+ button2 = tk.Button(root,text='(」・ω・)」うー!',command = btn_click2)
182
+ button2.place(width=80, x=30, y=120)
183
+ button3 = tk.Button(root,text='(」・ω・)」うー!',command = btn_click3)
184
+ button3.place(width=80, x=30, y=160)
185
+
186
+ Clear_button = tk.Button(root,text='クリア',command = clear)
187
+ Clear_button.place(width=50,x=25,y=250)
188
+
189
+ txt_1 = tk.Entry(width=50)
190
+ txt_1.place(x=120, y=82)
191
+
192
+ txt_2 = tk.Entry(width=50)
193
+ txt_2.place(x=120, y=122)
194
+
195
+ txt_3 = tk.Entry(width=50)
196
+ txt_3.place(x=120, y=162)
197
+
198
+ root.mainloop( )
109
199
  ```

1

より詳細に聞きたい箇所の追加

2020/09/21 10:10

投稿

fuji36_om
fuji36_om

スコア8

title CHANGED
File without changes
body CHANGED
@@ -90,6 +90,7 @@
90
90
  root.mainloop( )
91
91
  ```
92
92
  トグルボタンは下記のHPを参考にしました。
93
+ ボタンの位置指定の書き換えも失敗しているので、その個所も教えていただければ幸いです。
93
94
  [Simple Tkinter Toggle Button](https://www.daniweb.com/programming/software-development/code/429838/simple-tkinter-toggle-button)
94
95
  ```python
95
96
  import tkinter as tk