JavaFX - MediaView getX() 方法



在 JavaFX 中,'MediaView' 类中的 **getX()** 方法用于检索一个 'DoubleProperty',该属性定义了 MediaView 节点原点的当前 x 坐标。它是确定其在坐标系中位置和布局的起点。

在 JavaFX 代码中,“节点”指的是图形元素,例如 MediaView、StackPane 和 Scene,它们都是 JavaFX 应用程序可视化结构的一部分。

**注意** - 如果未设置 X 坐标,则 getX() 方法返回默认值 0.0。

语法

'MediaView' 类的 'getX()' 方法的语法如下:

public final double getX()

参数

此方法不接受任何参数。

返回值

此方法返回视图原点的 x 坐标。

示例 1

下面是一个演示 'MediaView' 类 **getX()** 方法的基本示例:

在这个示例中,我们创建一个 JavaFX 应用程序,使用 MediaView 显示媒体文件。我们设置 MediaView 的初始 x 坐标,并使用 **getX()** 方法检索当前 x 坐标。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
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 GetX extends Application {
   @Override
   public void start(Stage primaryStage) {
      File mediaPath = new File("./audio_video/sampleTP.mp4");
      Media media = new Media(mediaPath.toURI().toString());
	
      // Create a MediaPlayer object and attach the Media object
      MediaPlayer mediaPlayer = new MediaPlayer(media);

      // Create a MediaView associated with the MediaPlayer
      MediaView mediaView = new MediaView(mediaPlayer);

      // Set initial coordinates
      double initialX = 100.0;
      mediaView.setX(initialX);

      // Retrieve and print current x-coordinate
      System.out.println("Initial X-coordinate: " + mediaView.getX());

      // Create a layout and add the MediaView
      StackPane root = new StackPane();
      root.getChildren().add(mediaView);

      // Set up the scene
      Scene scene = new Scene(root, 550, 270);
      primaryStage.setScene(scene);
      primaryStage.setTitle("MediaView getX() Example");
      primaryStage.show();
   }
   public static void main(String[] args) {
      launch(args);
   }
}

输出

以下是将 x 坐标显示到控制台的代码的输出。

Initial X-coordinate: 100.0

示例 2

在这个示例中,我们首先创建一个表示媒体文件的 Media 对象。然后,我们创建一个与 Media 关联的 MediaPlayer 和一个与 MediaPlayer 关联的 MediaView。我们使用 setX() 和 setY() 方法设置 MediaView 的初始坐标。然后,我们使用 **getX()** 和 **getY()** 方法检索并打印初始坐标和更新后的坐标。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
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 GetX_GetY extends Application {
   @Override
   public void start(Stage primaryStage) {
      File mediaPath = new File("./audio_video/sampleTP.mp4");
      Media media = new Media(mediaPath.toURI().toString());
		
      // Create a MediaPlayer object and attach the Media object
      MediaPlayer mediaPlayer = new MediaPlayer(media);

      // Create a MediaView associated with the MediaPlayer
      MediaView mediaView = new MediaView(mediaPlayer);

      // Set initial coordinates
      double initialX = 100.0;
      double initialY = 80.0;
      mediaView.setX(initialX);
      mediaView.setY(initialY);

      // Retrieve and print current coordinates
      System.out.println("Initial X-coordinate: " + mediaView.getX());
      System.out.println("Initial Y-coordinate: " + mediaView.getY());

      // Example of updating coordinates
      double newX = 200.0;
      double newY = 150.0;
      mediaView.setX(newX);
      mediaView.setY(newY);

      // Retrieve and print updated coordinates
      System.out.println("Updated X-coordinate: " + mediaView.getX());
      System.out.println("Updated Y-coordinate: " + mediaView.getY());

      // Create a layout and add the MediaView
      StackPane root = new StackPane();
      root.getChildren().add(mediaView);

      // Set up the scene
      Scene scene = new Scene(root, 550, 280);
      primaryStage.setScene(scene);
      primaryStage.setTitle("MediaView Example");
      primaryStage.show();
   }
   public static void main(String[] args) {
      launch(args);
   }
}

输出

以下是代码的输出:

Initial X-coordinate: 100.0
Initial Y-coordinate: 80.0
Updated X-coordinate: 200.0
Updated Y-coordinate: 150.0
广告
© . All rights reserved.