用python中的tkinter写一个能在交互界面演奏的电子琴
时间: 2024-05-01 14:21:07 浏览: 148
电子琴Python编程
好的,下面是一个简单的实现:
首先,我们需要导入`tkinter`和`winsound`模块。
```python
import tkinter as tk
import winsound
```
然后,我们需要定义电子琴按键的音高和按键的颜色。
```python
# 音高
notes = {'C4': 262, 'D4': 294, 'E4': 330, 'F4': 349, 'G4': 392, 'A4': 440, 'B4': 494, 'C5': 523}
# 颜色
colors = {'C4': 'white', 'D4': 'white', 'E4': 'white', 'F4': 'white', 'G4': 'white', 'A4': 'white', 'B4': 'white', 'C5': 'white'}
```
接下来,我们需要创建一个`tkinter`窗口,并在窗口上添加按键。
```python
# 创建窗口
window = tk.Tk()
window.title('电子琴')
# 添加按键
for note, freq in notes.items():
btn = tk.Button(window, text=note, bg=colors[note], height=7, width=3)
btn.config(command=lambda f=freq: winsound.Beep(f, 500))
btn.pack(side='left')
```
最后,我们需要运行窗口。
```python
window.mainloop()
```
完整代码如下:
```python
import tkinter as tk
import winsound
# 音高
notes = {'C4': 262, 'D4': 294, 'E4': 330, 'F4': 349, 'G4': 392, 'A4': 440, 'B4': 494, 'C5': 523}
# 颜色
colors = {'C4': 'white', 'D4': 'white', 'E4': 'white', 'F4': 'white', 'G4': 'white', 'A4': 'white', 'B4': 'white', 'C5': 'white'}
# 创建窗口
window = tk.Tk()
window.title('电子琴')
# 添加按键
for note, freq in notes.items():
btn = tk.Button(window, text=note, bg=colors[note], height=7, width=3)
btn.config(command=lambda f=freq: winsound.Beep(f, 500))
btn.pack(side='left')
# 运行窗口
window.mainloop()
```
你可以在窗口上点击按键,即可演奏相应的音符。
阅读全文