java - 使用 javafx 和场景生成器创建音乐播放器

标签 java media-player media fxml

我正在尝试创建我自己的 iTunes 版本。我正在尝试创建一个音乐播放器,这是我的方法:

public void audioPlayerButtons(ActionEvent actionEvent) {
    if (actionEvent.getSource() == playbtn) {

        String bip = "/Users/april121/Work/MyMusic!/src/sample/Songs/01 Clarity.m4a";
        Media hit = new Media(bip);
        MediaPlayer mediaPlayer = new MediaPlayer(hit);
        MediaPlayer.play();

    }

   else (actionEvent.getSource()== pausebtn){
           MediaPlayer.pause();
   }

   else (actionEvent.getSource()==forwardbtn){
       MediaPlayer.seek(MediaPlayer.getStartTime());
       MediaPlayer.stop();
   }

   else (actionEvent.getSource()==backwardbtn){
//to be finished
    }

但我现在已经尝试了几个小时 - 无论是通过从 Maven 导入库还是硬编码,它都不起作用。

我希望它能显示正在播放的内容并具有基本功能,即。播放、暂停、快退和快进,并有进度条。

这是它显示的错误:

non-static method can't be accessed in static context. And the part that is causing the error is the ".stop()" or ".play()" bits

但我不明白为什么 - 因为我的方法无论如何都是非静态的

最佳答案

看看这些行:

MediaPlayer mediaPlayer = new MediaPlayer(hit);
MediaPlayer.play();

第二行正在调用静态 play() 函数,该函数不起作用。 play() 函数是非静态的。这就是您收到错误的原因。

你的意思可能是这样的:

MediaPlayer mediaPlayer = new MediaPlayer(hit);
mediaPlayer.play();

如果您还有其他问题,请将它们作为单独的问题发布,并尽量具体。

关于java - 使用 javafx 和场景生成器创建音乐播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30309228/

相关文章:

android - 如何列出要存储在服务器上的歌曲详细信息

javascript - 从客户端上传 azure 文件

java - 在父类(super class)型中设置变量的正确方法

android - 流式传输到 Android MediaPlayer

windows-phone-7 - MediaElement 破坏 WP7 中的音频播客 (MediaPlayer)

java - 动态确定 Exoplayer 中的音频容器

JavaFX - TextArea 的掩码文本

java - 如何解码此 XML 文件结构

java - 在 Android 上将 Canvas 保存为位图

android - 完成 Activity 时出现 MediaPlayer 异常