Javafx 视频不';开始
我是Java初学者。我正在尝试用JavaFX创建一个视频播放器,但是在运行代码之后,视频不会启动。但是,控制台没有显示任何错误 代码如下:Javafx 视频不';开始,javafx,video,media-player,media,Javafx,Video,Media Player,Media,我是Java初学者。我正在尝试用JavaFX创建一个视频播放器,但是在运行代码之后,视频不会启动。但是,控制台没有显示任何错误 代码如下: package application; import javafx.scene.layout.BorderPane; import javafx.scene.layout.Pane; import javafx.scene.media.Media; import javafx.scene.media.MediaPlayer; import javafx.
package application;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.Pane;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
public class Player extends BorderPane {
Media media;
MediaPlayer player;
MediaView view;
Pane mpane;
public Player(String file){
if (file == null)
return;
media = new Media(file);
player = new MediaPlayer(media);
view = new MediaView(player);
mpane = new Pane();
mpane.getChildren().add(view);
setCenter(mpane);
player.play();
}
}
主要类别:
package application;
import javafx.application.Application;
import javafx.scene.*;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
Player player = new Player("file:///D:/2013.flv");
Scene scene = new Scene(player, 720, 480, Color.BLACK);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
有人能帮我吗?为什么构造函数中有返回语句?可能是传入的文件为null,而构造函数的其余部分未执行?您尝试过调试吗?在大多数情况下,如果参数值无效,应抛出
IllegalArgumentException
。顺便说一句:我已经尝试了代码(newplayer(新文件(“path/to/myVideoFile.mp4”).toURI().toString())
),但无法重现错误。@hotzst当我在此处的类似问题中找到此答案时,添加了return语句:。不管有没有,它都不会改变任何东西。欢迎使用StackOverflow。请在你的问题中添加一个。这使人们更容易调试并为您的问题提供解决方案。@ItachiUchiha编辑了添加主类的帖子。为什么在构造函数中有返回语句?可能是传入的文件为null,而构造函数的其余部分未执行?您尝试过调试吗?在大多数情况下,如果参数值无效,应抛出IllegalArgumentException
。顺便说一句:我已经尝试了代码(newplayer(新文件(“path/to/myVideoFile.mp4”).toURI().toString())
),但无法重现错误。@hotzst当我在此处的类似问题中找到此答案时,添加了return语句:。不管有没有,它都不会改变任何东西。欢迎使用StackOverflow。请在你的问题中添加一个。这使人们更容易调试并为您的问题提供解决方案。@ItachiUchiha编辑了添加主类的帖子。