質問編集履歴

2

2017/11/25 13:52

投稿

uc200
uc200

スコア32

test CHANGED
File without changes
test CHANGED
@@ -94,7 +94,7 @@
94
94
 
95
95
 
96
96
 
97
- app = QtGui.QGuiApplication(sys.argv)
97
+ app = QApplication(sys.argv)
98
98
 
99
99
  ex = Example()
100
100
 

1

2017/11/25 13:51

投稿

uc200
uc200

スコア32

test CHANGED
File without changes
test CHANGED
@@ -36,8 +36,114 @@
36
36
 
37
37
  player.setVolume(100)
38
38
 
39
+
40
+
41
+
42
+
43
+ class Example(QMainWindow):
44
+
45
+
46
+
47
+ def __init__(self):
48
+
49
+ super().__init__()
50
+
51
+
52
+
53
+ self.initUI()
54
+
55
+
56
+
57
+
58
+
59
+ def initUI(self):
60
+
61
+
62
+
63
+ btn1 = QPushButton("Button 1", self)
64
+
65
+ btn1.move(75, 50)
66
+
67
+
68
+
69
+ # クリックされたらbuttonClickedの呼び出し
70
+
71
+ btn1.clicked.connect(self.buttonClicked)
72
+
73
+
74
+
75
+ self.setGeometry(300, 300, 290, 150)
76
+
77
+ self.setWindowTitle('Event sender')
78
+
79
+ self.show()
80
+
81
+
82
+
83
+
84
+
85
+ def buttonClicked(self):
86
+
87
+ player.play()
88
+
89
+
90
+
91
+
92
+
93
+ if __name__ == '__main__':
94
+
95
+
96
+
97
+ app = QtGui.QGuiApplication(sys.argv)
98
+
99
+ ex = Example()
100
+
101
+ sys.exit(app.exec_())
102
+
103
+
104
+
105
+ ```
106
+
107
+
108
+
109
+ ###試したこと
110
+
111
+ 音を出すコードとして、次の様なコードを書きました
112
+
113
+ ```
114
+
115
+ from PyQt5 import QtCore, QtWidgets, QtMultimedia, QtGui
116
+
117
+ import sys
118
+
119
+
120
+
121
+ app = QtGui.QGuiApplication(sys.argv)
122
+
123
+ player = QtMultimedia.QMediaPlayer()
124
+
125
+ sound = QtMultimedia.QMediaContent(QtCore.QUrl.fromLocalFile("sound.wav"))
126
+
127
+ player.setMedia(sound)
128
+
129
+ player.setVolume(100)
130
+
39
131
  player.play()
40
132
 
133
+ sys.exit(app.exec_())
134
+
135
+ ```
136
+
137
+ これ正常に動きました。次に、ボタンを押した時にコマンドを出すコードとして、次のようなコードがあったので、それを参考にしました。これは、クリック時にステータスバーの表示を変化させるコードです。
138
+
139
+ ```
140
+
141
+ import sys
142
+
143
+ from PyQt5.QtWidgets import QMainWindow, QPushButton, QApplication
144
+
145
+
146
+
41
147
 
42
148
 
43
149
  class Example(QMainWindow):
@@ -62,7 +168,13 @@
62
168
 
63
169
  btn1 = QPushButton("Button 1", self)
64
170
 
65
- btn1.move(75, 50)
171
+ btn1.move(30, 50)
172
+
173
+
174
+
175
+ btn2 = QPushButton("Button 2", self)
176
+
177
+ btn2.move(150, 50)
66
178
 
67
179
 
68
180
 
@@ -70,6 +182,12 @@
70
182
 
71
183
  btn1.clicked.connect(self.buttonClicked)
72
184
 
185
+ btn2.clicked.connect(self.buttonClicked)
186
+
187
+
188
+
189
+ self.statusBar()
190
+
73
191
 
74
192
 
75
193
  self.setGeometry(300, 300, 290, 150)
@@ -84,7 +202,13 @@
84
202
 
85
203
  def buttonClicked(self):
86
204
 
205
+
206
+
207
+ # ステータスバーへメッセージの表示
208
+
87
- player.play()
209
+ sender = self.sender()
210
+
211
+ self.statusBar().showMessage(sender.text() + ' was pressed')
88
212
 
89
213
 
90
214
 
@@ -94,7 +218,7 @@
94
218
 
95
219
 
96
220
 
97
- app = QtGui.QGuiApplication(sys.argv)
221
+ app = QApplication(sys.argv)
98
222
 
99
223
  ex = Example()
100
224
 
@@ -104,130 +228,6 @@
104
228
 
105
229
  ```
106
230
 
107
-
108
-
109
- ###試したこと
110
-
111
- 音を出すコードとして、次の様なコードを書きました
112
-
113
- ```
114
-
115
- from PyQt5 import QtCore, QtWidgets, QtMultimedia, QtGui
116
-
117
- import sys
118
-
119
-
120
-
121
- app = QtGui.QGuiApplication(sys.argv)
122
-
123
- player = QtMultimedia.QMediaPlayer()
124
-
125
- sound = QtMultimedia.QMediaContent(QtCore.QUrl.fromLocalFile("sound.wav"))
126
-
127
- player.setMedia(sound)
128
-
129
- player.setVolume(100)
130
-
131
- player.play()
132
-
133
- sys.exit(app.exec_())
134
-
135
- ```
136
-
137
- これ正常に動きました。次に、ボタンを押した時にコマンドを出すコードとして、次のようなコードがあったので、それを参考にしました。これは、クリック時にステータスバーの表示を変化させるコードです。
138
-
139
- ```
140
-
141
- import sys
142
-
143
- from PyQt5.QtWidgets import QMainWindow, QPushButton, QApplication
144
-
145
-
146
-
147
-
148
-
149
- class Example(QMainWindow):
150
-
151
-
152
-
153
- def __init__(self):
154
-
155
- super().__init__()
156
-
157
-
158
-
159
- self.initUI()
160
-
161
-
162
-
163
-
164
-
165
- def initUI(self):
166
-
167
-
168
-
169
- btn1 = QPushButton("Button 1", self)
170
-
171
- btn1.move(30, 50)
172
-
173
-
174
-
175
- btn2 = QPushButton("Button 2", self)
176
-
177
- btn2.move(150, 50)
178
-
179
-
180
-
181
- # クリックされたらbuttonClickedの呼び出し
182
-
183
- btn1.clicked.connect(self.buttonClicked)
184
-
185
- btn2.clicked.connect(self.buttonClicked)
186
-
187
-
188
-
189
- self.statusBar()
190
-
191
-
192
-
193
- self.setGeometry(300, 300, 290, 150)
194
-
195
- self.setWindowTitle('Event sender')
196
-
197
- self.show()
198
-
199
-
200
-
201
-
202
-
203
- def buttonClicked(self):
204
-
205
-
206
-
207
- # ステータスバーへメッセージの表示
208
-
209
- sender = self.sender()
210
-
211
- self.statusBar().showMessage(sender.text() + ' was pressed')
212
-
213
-
214
-
215
-
216
-
217
- if __name__ == '__main__':
218
-
219
-
220
-
221
- app = QApplication(sys.argv)
222
-
223
- ex = Example()
224
-
225
- sys.exit(app.exec_())
226
-
227
-
228
-
229
- ```
230
-
231
231
  これも正常に動きました。そこで、この二つのコードを参考に該当のコードを書いてみましたが、ボタンは表示されましたが、押しても何も起きませんでした。特にエラーは出ていません。
232
232
 
233
233
  ###補足情報(言語/FW/ツール等のバージョンなど)