参照教材P135,习题第3题,设计一个具有选歌功能的音乐播放器。(提示:界面采用3个RadioButton作为歌曲选项,2个Button控制播放和停止)
时间: 2024-10-29 10:24:33 浏览: 25
参照教材P135的习题3,我们可以设计一个简单的命令式风格的音乐播放器。首先,我们需要创建一个MusicPlayer类,它包含三个RadioButtons(歌曲选择),分别代表不同的歌曲A、B和C,以及两个Buttons(play和stop)。以下是核心部分的设计:
```java
import javax.swing.*;
import java.awt.*;
public class MusicPlayer {
private JFrame frame;
private JPanel panel;
private JRadioButton songA, songB, songC;
private JButton playBtn, stopBtn;
// 初始化UI组件和方法
public MusicPlayer() {
initializeComponents();
setupListeners();
}
private void initializeComponents() {
frame = new JFrame("Music Player");
frame.setSize(400, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel = new JPanel(new GridLayout(4, 1));
frame.add(panel);
songA = new JRadioButton("Song A");
songB = new JRadioButton("Song B");
songC = new JRadioButton("Song C");
playBtn = new JButton("Play");
playBtn.addActionListener(this::handlePlay);
stopBtn = new JButton("Stop");
stopBtn.addActionListener(this::handleStop);
panel.add(songA);
panel.add(songB);
panel.add(songC);
panel.add(playBtn);
panel.add(stopBtn);
}
private void handlePlay(ActionEvent e) {
if (songA.isSelected()) { // 如果选择了Song A
// 播放Song A的逻辑...
} else if (songB.isSelected()) { // 同理处理其他歌曲
// ...
}
}
private void handleStop(ActionEvent e) {
// 停止播放的逻辑...
}
// 主函数启动应用
public static void main(String[] args) {
EventQueue.invokeLater(() -> {
MusicPlayer player = new MusicPlayer();
frame.setVisible(true);
});
}
}
```
阅读全文