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

回答編集履歴

2

追記

2017/12/03 07:09

投稿

uc200
uc200

スコア32

answer CHANGED
@@ -82,4 +82,48 @@
82
82
  window.show()
83
83
  sys.exit(app.exec_())
84
84
 
85
+ ```
86
+
87
+ 追記
88
+ ボタンを任意の位置に表示できるようにしました
89
+ ボタンに音楽再生マークのラベルを付けました
90
+ ボタンを押した時に再び最初から音楽がなるようにしました
91
+
92
+ ```
93
+ import sys
94
+ from PyQt5 import QtCore, QtWidgets, QtMultimedia
95
+ from PyQt5.QtGui import QColor
96
+ from PyQt5.QtCore import *
97
+ from PyQt5.QtGui import *
98
+ from PyQt5.QtWidgets import *
99
+
100
+ class Window(QtWidgets.QWidget):
101
+ def __init__(self):
102
+ super(Window, self).__init__()
103
+ self.setWindowTitle("sound")
104
+ self.setGeometry(500,300,100,100)
105
+
106
+ btn = QPushButton(self)
107
+ btn.setIcon(self.style().standardIcon(getattr(QStyle,"SP_MediaPlay")))
108
+ btn.move(50, 25)
109
+ btn.clicked.connect(self.handlePlay)
110
+
111
+ self.mediaPlayer = QtMultimedia.QMediaPlayer(self)
112
+ sound=QtMultimedia.QMediaContent(QtCore.QUrl.fromLocalFile("sound.wav"))
113
+ self.mediaPlayer.setMedia(sound)
114
+
115
+ self.show()
116
+
117
+
118
+ def handlePlay(self):
119
+ self.mediaPlayer.stop()
120
+ self.mediaPlayer.play()
121
+
122
+
123
+ if __name__ == '__main__':
124
+
125
+ app = QtWidgets.QApplication(sys.argv)
126
+ window = Window()
127
+ sys.exit(app.exec_())
128
+
85
129
  ```

1

コードの追記

2017/12/03 07:09

投稿

uc200
uc200

スコア32

answer CHANGED
@@ -44,4 +44,42 @@
44
44
  window.show()
45
45
  sys.exit(app.exec_())
46
46
  ```
47
- これを参考にすればなんとか行けそうな気がします。もっと簡単に書ける方いたらご教授お願いします。
47
+ これを参考にすればなんとか行けそうな気がします。もっと簡単に書ける方いたらご教授お願いします。
48
+
49
+ 追記
50
+ とりあえず次の様なコードで動きました
51
+ ```
52
+ import sys
53
+ from PyQt5 import QtCore, QtWidgets, QtMultimedia
54
+ from PyQt5.QtGui import QColor
55
+
56
+ class Window(QtWidgets.QWidget):
57
+ def __init__(self):
58
+ super(Window, self).__init__()
59
+ self.buttonPlay = QtWidgets.QPushButton('Play', self)
60
+ self.buttonPlay.clicked.connect(self.handlePlay)
61
+ layout = QtWidgets.QHBoxLayout(self)
62
+ layout.addWidget(self.buttonPlay)
63
+ self.mediaPlayer = QtMultimedia.QMediaPlayer(self)
64
+ sound=QtMultimedia.QMediaContent(QtCore.QUrl.fromLocalFile("sound.wav"))
65
+ self.mediaPlayer.setMedia(sound)
66
+
67
+
68
+ def handlePlay(self):
69
+ if self.buttonPlay.text() == 'Play':
70
+ self.buttonPlay.setText('Stop')
71
+ # self._buffer.seek(0)
72
+ self.mediaPlayer.play()
73
+ else:
74
+ self.buttonPlay.setText('Play')
75
+ self.mediaPlayer.stop()
76
+
77
+ if __name__ == '__main__':
78
+
79
+ app = QtWidgets.QApplication(sys.argv)
80
+ window = Window()
81
+ window.setGeometry(600, 100, 200, 50)
82
+ window.show()
83
+ sys.exit(app.exec_())
84
+
85
+ ```