FXML 中的 JavaFX MediaView
JavaFX MediaView in FXML
我曾尝试在我的 fxml 中创建一个 MediaView,但它似乎不起作用,只会出现错误。我正在播放的视频是基于本地的。
<MediaView>
<MediaPlayer>
<Media source="vid/video.avi"/>
</MediaPlayer>
</MediaView>
使用您的 FXML 代码,我收到以下警告:
Class javafx.scene.media.MediaView has no default property. Place javafx.scene.media.MediaView content in a proper element.
Class javafx.scene.media.MediaPlayer has no default property. Place javafx.scene.media.MediaPlayer content in a proper element.
如果您在 NetBeans 上编辑 FXML 文件,当您开始添加 <MediaView>
时,单击 Ctrl+space,然后从所有属性中,select mediaPlayer
。然后再次Ctrl+space,然后select MediaPlayer
。现在添加 media
,最后添加 Media
.
它应该是这样的:
<AnchorPane prefHeight="480.0" prefWidth="640.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
<children>
<MediaView >
<mediaPlayer>
<MediaPlayer autoPlay="true">
<media>
<Media source="http://download.oracle.com/otndocs/products/javafx/oow2010-2.flv" />
</media>
</MediaPlayer>
</mediaPlayer>
</MediaView>
</children>
</AnchorPane>
请注意 mediaPlayer
是 MediaView
的 属性:
private ObjectProperty<MediaPlayer> mediaPlayer;
而 media
是 MediaPlayer
的命名参数:
public MediaPlayer(@NamedArg("media") Media media)
我曾尝试在我的 fxml 中创建一个 MediaView,但它似乎不起作用,只会出现错误。我正在播放的视频是基于本地的。
<MediaView>
<MediaPlayer>
<Media source="vid/video.avi"/>
</MediaPlayer>
</MediaView>
使用您的 FXML 代码,我收到以下警告:
Class javafx.scene.media.MediaView has no default property. Place javafx.scene.media.MediaView content in a proper element.
Class javafx.scene.media.MediaPlayer has no default property. Place javafx.scene.media.MediaPlayer content in a proper element.
如果您在 NetBeans 上编辑 FXML 文件,当您开始添加 <MediaView>
时,单击 Ctrl+space,然后从所有属性中,select mediaPlayer
。然后再次Ctrl+space,然后select MediaPlayer
。现在添加 media
,最后添加 Media
.
它应该是这样的:
<AnchorPane prefHeight="480.0" prefWidth="640.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
<children>
<MediaView >
<mediaPlayer>
<MediaPlayer autoPlay="true">
<media>
<Media source="http://download.oracle.com/otndocs/products/javafx/oow2010-2.flv" />
</media>
</MediaPlayer>
</mediaPlayer>
</MediaView>
</children>
</AnchorPane>
请注意 mediaPlayer
是 MediaView
的 属性:
private ObjectProperty<MediaPlayer> mediaPlayer;
而 media
是 MediaPlayer
的命名参数:
public MediaPlayer(@NamedArg("media") Media media)