質問編集履歴
4
コードのミス
title
CHANGED
File without changes
|
body
CHANGED
@@ -19,6 +19,10 @@
|
|
19
19
|
self.top = Tk.Toplevel(self.master)
|
20
20
|
self.f = Tk.Frame(self.top)
|
21
21
|
self.f.pack()
|
22
|
+
self.volume = Tk.IntVar()
|
23
|
+
self.volume.set(50)
|
24
|
+
self.volume_bar = Tk.Scale(self.f, orient='h',variable=self.volume)
|
25
|
+
self.volume_bar.pack()
|
22
26
|
|
23
27
|
class Frame(Tk.Frame):
|
24
28
|
def __init__(self, master=None):
|
@@ -43,5 +47,4 @@
|
|
43
47
|
f.pack()
|
44
48
|
f.mainloop()
|
45
49
|
|
46
|
-
class Frame(Tk.Frame):
|
47
50
|
```
|
3
コードのミス
title
CHANGED
File without changes
|
body
CHANGED
@@ -19,6 +19,8 @@
|
|
19
19
|
self.top = Tk.Toplevel(self.master)
|
20
20
|
self.f = Tk.Frame(self.top)
|
21
21
|
self.f.pack()
|
22
|
+
|
23
|
+
class Frame(Tk.Frame):
|
22
24
|
def __init__(self, master=None):
|
23
25
|
Tk.Frame.__init__(self, master)
|
24
26
|
self.f = Tk.Frame(self)
|
2
質問の仕方を変えた
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,4 +5,41 @@
|
|
5
5
|
"子ウィンドウを閉じるとまたボタンをNORMALにする"という部分をコードとして書く方法がよく分からず困っています
|
6
6
|
|
7
7
|
つまりある動作(ここでいえば子ウィンドウが開いているかいないか)をイベントとして登録するというツールや発想があれば教えていただきたいです
|
8
|
-
よろしくお願いします
|
8
|
+
よろしくお願いします
|
9
|
+
|
10
|
+
```python
|
11
|
+
import tkinter as Tk
|
12
|
+
|
13
|
+
class VolumeWindow:
|
14
|
+
|
15
|
+
def __init__(self, master):
|
16
|
+
self.master = master
|
17
|
+
|
18
|
+
def make_window(self, event=None):
|
19
|
+
self.top = Tk.Toplevel(self.master)
|
20
|
+
self.f = Tk.Frame(self.top)
|
21
|
+
self.f.pack()
|
22
|
+
def __init__(self, master=None):
|
23
|
+
Tk.Frame.__init__(self, master)
|
24
|
+
self.f = Tk.Frame(self)
|
25
|
+
self.f.pack()
|
26
|
+
|
27
|
+
self.volume = VolumeWindow(self.f)
|
28
|
+
self.f_button = Tk.Frame(self.f)
|
29
|
+
self.f_button.pack()
|
30
|
+
|
31
|
+
self.volume_button = Tk.Button(self.f_button, text='Volume', command=self.control_volume, state=Tk.NORMAL)
|
32
|
+
|
33
|
+
self.volume_button.pack(padx=5, pady=5, side=Tk.LEFT)
|
34
|
+
|
35
|
+
def control_volume(self):
|
36
|
+
self.volume.make_window()
|
37
|
+
self.volume_button.configure(state=Tk.DISABLED)
|
38
|
+
|
39
|
+
if __name__ == '__main__':
|
40
|
+
f = Frame()
|
41
|
+
f.pack()
|
42
|
+
f.mainloop()
|
43
|
+
|
44
|
+
class Frame(Tk.Frame):
|
45
|
+
```
|
1
作業依頼にはしたくなく、あえてコードを送らないような質問の仕方にした
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
Tkinter で
|
1
|
+
Tkinter で動作をイベントとして登録する方法
|
body
CHANGED
@@ -1,15 +1,8 @@
|
|
1
1
|
プログラミング初学者です
|
2
2
|
|
3
3
|
音楽プレーヤーをtkinterを使って製作しているのですが
|
4
|
-
ボタンを制御する方法が分からず困っています
|
5
|
-
|
4
|
+
ボタン押すと新しい子ウィンドウが作成され、子ウィンドウが出ている間はボタンをDISABLEして、ウィンドウが新たに作成されないようにしたいのですが、
|
6
|
-
自分のコードに適用できず困っています
|
7
|
-
い
|
5
|
+
"子ウィンドウを閉じるとまたボタンをNORMALにする"という部分をコードとして書く方法がよく分からず困っています
|
8
6
|
|
9
|
-
```python
|
10
|
-
self.volume_button = Tk.Button(self.f_button, text='Volume', command=VolumeWindow(self.f))
|
11
|
-
|
12
|
-
```
|
13
|
-
|
7
|
+
つまりある動作(ここでいえば子ウィンドウが開いているかいないか)をイベントとして登録するというツールや発想があれば教えていただきたいです
|
14
|
-
|
8
|
+
よろしくお願いします
|
15
|
-
あるいはVolumeWindowの数を1つだけに制限したいです
|