MediaView JavaFX FXML上的按钮

乔希·海狸(Josh Beaver)

我该如何在MediaView组件上创建一个按钮,例如在视频中央单击一个播放按钮。我正在使用FXML,所以如果您可以使用它给我一个答案,那就更好了。

何塞·佩雷达(Jose Pereda)

您可以轻松地Button在媒体播放器上添加一个只需将它们都放在上即可StackPane

然后向该按钮添加一个方法,因此单击该按钮时将其隐藏,并且视频开始播放。

我还将添加一种在视频结束后再次显示按钮的方法,让您重新开始。

这是FXML:

<AnchorPane prefHeight="480.0" prefWidth="640.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="Controller">
    <children>
        <StackPane>
           <children>
              <MediaView>
                  <mediaPlayer>
                      <MediaPlayer fx:id="mediaPlayer" autoPlay="false">
                          <media>
                              <Media source="http://download.oracle.com/otndocs/products/javafx/oow2010-2.flv" />
                          </media>
                      </MediaPlayer>
                  </mediaPlayer>    
              </MediaView>
              <Button fx:id="button" mnemonicParsing="false" onAction="#playAndHide" text="Play Video" />
           </children>
        </StackPane>
    </children>
</AnchorPane>

这是Controller课程:

@FXML private Button button;
@FXML private MediaPlayer mediaPlayer;

@Override
public void initialize(URL url, ResourceBundle rb) {
    mediaPlayer.setOnEndOfMedia(()->button.setVisible(true));
}    

@FXML
public void playAndHide(ActionEvent event){
    button.setVisible(false);
    mediaPlayer.seek(Duration.ZERO);
    mediaPlayer.play();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章