public class VideoPlayerGui extends GuiScreen {
private File videoFile;
private MediaPlayer mediaPlayer;
public VideoPlayerGui(File file) {
this.videoFile = file;
}
@Override
public void initGui() {
super.initGui();
try {
// Create a new media player
mediaPlayer = new MediaPlayer(new Media(videoFile.toURI().toString()));
mediaPlayer.setAutoPlay(true);
// Get the embedded media view from the media player
MediaView mediaView = new MediaView(mediaPlayer);
mediaView.setPreserveRatio(true);
// Add the media view to the screen
this.addRenderableWidget(new GuiVideoPlayer(mediaView, width / 2 - 128, height / 2 - 72, 256, 144));
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public boolean doesGuiPauseGame() {
return true;
}
@Override
public void onGuiClosed() {
super.onGuiClosed();
// Stop the media player when the GUI is closed
mediaPlayer.stop();
}
}
这就是他写的代码,讲道理,我觉得有点离谱,但是合理
private File videoFile;
private MediaPlayer mediaPlayer;
public VideoPlayerGui(File file) {
this.videoFile = file;
}
@Override
public void initGui() {
super.initGui();
try {
// Create a new media player
mediaPlayer = new MediaPlayer(new Media(videoFile.toURI().toString()));
mediaPlayer.setAutoPlay(true);
// Get the embedded media view from the media player
MediaView mediaView = new MediaView(mediaPlayer);
mediaView.setPreserveRatio(true);
// Add the media view to the screen
this.addRenderableWidget(new GuiVideoPlayer(mediaView, width / 2 - 128, height / 2 - 72, 256, 144));
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public boolean doesGuiPauseGame() {
return true;
}
@Override
public void onGuiClosed() {
super.onGuiClosed();
// Stop the media player when the GUI is closed
mediaPlayer.stop();
}
}
这就是他写的代码,讲道理,我觉得有点离谱,但是合理