程序运行时,如何使MediaView具有相同的布局边界高度和宽度?

时间:2020-02-19 04:05:26

标签: javafx

我想知道mediaview如何全屏显示,以及在调整舞台大小时,mediaview也要这样做。我做到了,但没有做到我想要的。

public class Controller implements Initializable 
{

    @FXML
    private MediaView mediaView;

    @Override
    public void initialize(URL url, ResourceBundle resourceBundle) {

        Media media = new Media("file:///D:/Sound.MP4");
        MediaPlayer mediaPlayer = new MediaPlayer(media);
        mediaView.setMediaPlayer(mediaPlayer);

        mediaPlayer.play();

        mediaPlayer.setOnReady(new Runnable() {
            @Override
            public void run() {
                // Add Pane to scene
                DoubleProperty width = mediaView.fitWidthProperty();
                DoubleProperty height = mediaView.fitHeightProperty();

                width.bind(Bindings.selectDouble(mediaView.sceneProperty(),"width"));
                height.bind(Bindings.selectDouble(mediaView.sceneProperty(),"height"));
            }
        });
    }
}

1 个答案:

答案 0 :(得分:0)

这个问题的答案是下一行

mediaView.setPreserveRatio(false);

由于视频不能保持其比例,因此您可以将媒体视图调整到边界