JavaFX - MediaPlayer 的 isAutoPlay() 方法



在 JavaFX 中,'MediaPlayer' 類的 isAutoPlay() 方法是一個 getter 方法,用於檢索 'autoPlay' 屬性的值。此屬性決定媒體是否在準備好後立即開始播放。

例如,當我們建立一個新的 MediaPlayer 例項時,它會自動進入 READY 狀態。預設情況下,autoPlay 屬性設定為 false。

要使用 isAutoPlay() 方法,我們需要首先使用 setAutoPlay() 方法將 'autoPlay' 屬性設定為 true。如果我們不這樣做,isAutoPlay() 將返回 false。

語法

以下是 'MediaPlayer' 類中 'isAutoPlay()' 方法的語法:

public final boolean isAutoPlay()

引數

此方法不接受任何引數。

返回值

此方法返回一個布林值,該值簡單地指示媒體在準備好後是否會自動播放。

示例 1

以下是一個演示 'MediaPlayer' 類中 isAutoPlay() 方法的基本示例:

在此示例中,我們使用媒體檔案的路徑建立了一個 Media 例項。然後,我們建立一個 MediaPlayer 物件並將 autoPlay 屬性設定為 true。之後,我們使用 isAutoPlay() 方法顯示 autoPlay 屬性的值。

import javafx.application.Platform;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import java.io.File;
public class IsAutoPlay1{
   public static void main(String[] args) {
      // Initialize the JavaFX runtime
      Platform.startup(() -> {
         File mediaPath = new File("./audio_video/Hero2.mp3");
         // Create a Media object
         Media media = new Media(mediaPath.toURI().toString());
         // Create a MediaPlayer object and attach the Media object
         MediaPlayer mediaPlayer = new MediaPlayer(media);

         // Set autoPlay to true
         mediaPlayer.setAutoPlay(true);

         // Check if autoPlay is enabled
         System.out.println("AutoPlay enabled: " + mediaPlayer.isAutoPlay());
      });
   }
}

輸出

以下是程式碼的輸出:

AutoPlay enabled: true

示例 2

在此示例中,我們正在建立一個應用程式,該應用程式在 VBox 上顯示帶有 autoPlay 值的影片。我們沒有顯式設定 autoPlay 屬性,因此 isAutoPlay() 方法將顯示值為 false,這可以在輸出中看到。

import javafx.application.Application;
import javafx.application.Platform;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.VBox;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.stage.Stage;
import java.io.File;

public class IsAutoPlay2 extends Application {
   @Override
   public void start(Stage primaryStage) {
      File mediaPath = new File("./audio_video/sampleTP.mp4");
      // Create a Media object
      Media media = new Media(mediaPath.toURI().toString());
      // Create a MediaPlayer object and attach the Media object
      MediaPlayer mediaPlayer = new MediaPlayer(media);

      // Set autoPlay to true
      //mediaPlayer.setAutoPlay(true);
      
      // creating a MediaView object from the MediaPlayer Object
      MediaView viewmedia = new MediaView(mediaPlayer);
      viewmedia.setFitHeight(280);
      viewmedia.setFitWidth(500);

      // Create a VBox to hold the label and MediaView
      VBox root = new VBox();

      // Use String.valueOf to convert boolean to String
      Label playLabel = new Label("AutoPlay Enabled: " + String.valueOf(mediaPlayer.isAutoPlay()));
      root.getChildren().addAll(viewmedia, playLabel);

      Scene scene = new Scene(root, 550, 300);

      // Set the Scene to the Stage
      primaryStage.setScene(scene);
      primaryStage.setTitle("IsAutoPlay Example");
      primaryStage.show();
   }
   public static void main(String[] args) {
      launch(args);
   }
}

輸出

以下是程式碼的輸出:

isAutoPlay
廣告