簡體   English   中英

MediaView JavaFX FXML上的按鈕

[英]Button on MediaView JavaFX FXML

我該如何在MediaView組件上創建一個按鈕,例如在視頻中心單擊一個播放按鈕,該按鈕會消失。 我正在使用FXML,所以如果您可以使用它給我一個答案,那就更好了。

您可以通過在StackPane上輕松將一個Button添加到媒體播放器的頂部。

然后向該按鈕添加一個方法,因此單擊該按鈕時將其隱藏,並且視頻開始播放。

我還將添加一種在視頻結束后再次顯示按鈕的方法,讓您重新開始。

這是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();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM