JavaFX MediaPlayer的常用方法
过了一个月,我终于又要更博客啦~ ~ ~
(请大家原谅这个重度拖延症患者~ ~ ~)
今天完结撒花啦~ ~ ~
为了方便那些嫌太长不看的,我留下github:
MediaPlayer_JavaFX - A simple Media Player on JavaFX
上次我们放出了早就被奶爆的京紫,但一个视频播放器显然不能这么简单。我们通常要打开文件,调进度,暂停,调音量等等。
JavaFX的MediaPlayer有很多方法来控制多媒体控件:
void play(); // 开始播放媒体
void pause(); // 暂停播放
void stop(); // 停止播放(回到起点)
void seek(Duration seekTime); // 设置播放时间
void setVolume(double value); // 设置音量
Duration getStopTime(); // 获得媒体结束时间
MediaPlayer设置音量还有个很方便的方法,用一个滑条来控制音量,把滑条值和音量值捆绑(bind)。我的代码里就是这么写的。
Slider slVolume = new Slider();
...
mplayer.volumeProperty().bind(slVolume.valueProperty().divide(100));
我在代码中,只用文字Play和Pause来表示播放和暂停,这两个只用一个键交替。这个没有很大的技术含量,大家自己参考github上的代码即可。
另一个要做的是打开文件。这个可以用javafx.stage.FileChooser来打开:
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Open Media...");
fileChooser.getExtensionFilters().addAll(
new FileChooser.ExtensionFilter("MP4 Video", "*.mp4"),
new FileChooser.ExtensionFilter("MP3 Music", "*.mp3"),
new FileChooser.ExtensionFilter("All Files", "*.*"));
好啦,具体实现大家可以自己玩啦,代码用GPL v2.0发布,欢迎大家学习~
(这次效果图是爱衣酱)
(来自被叫去吃年夜饭的博主,无耻烂尾~ ~)