untitled paste

unlisted ⁨1⁩ ⁨file⁩ 2024-04-02 16:20:23 UTC

pastefile1

Raw
package org.mp;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Slider;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.stage.FileChooser;
import javafx.stage.Stage;

import java.io.File;

public class MusicPlayer extends Application {

    private MediaPlayer mediaPlayer;

    @Override
    public void start(Stage primaryStage) {
        BorderPane root = new BorderPane();

        // Create media player controls
        HBox controls = new HBox();
        Button openButton = new Button("Open");
        openButton.setOnAction(e -> openFile(primaryStage));
        Button playPauseButton = new Button("Play");
        playPauseButton.setOnAction(e -> togglePlayPause());
        Slider volumeSlider = new Slider(0, 100, 50);
        volumeSlider.valueProperty().addListener((obs, oldVal, newVal) -> setVolume(newVal.doubleValue() / 100));

        controls.getChildren().addAll(openButton, playPauseButton, volumeSlider);
        root.setTop(controls);

        Scene scene = new Scene(root, 400, 200);
        primaryStage.setScene(scene);
        primaryStage.setTitle("Music Player");
        primaryStage.show();
    }

    private void openFile(Stage primaryStage) {
        FileChooser fileChooser = new FileChooser();
        fileChooser.setTitle("Open Music File");
        File selectedFile = fileChooser.showOpenDialog(primaryStage);
        if (selectedFile != null) {
            Media media = new Media(selectedFile.toURI().toString());
            mediaPlayer = new MediaPlayer(media);
            mediaPlayer.setOnEndOfMedia(() -> mediaPlayer.stop()); // Stop when playback ends
        }
    }

    private void togglePlayPause() {
        if (mediaPlayer != null) {
            if (mediaPlayer.getStatus() == MediaPlayer.Status.PLAYING) {
                mediaPlayer.pause();
            } else {
                mediaPlayer.play();
            }
        }
    }

    private void setVolume(double volume) {
        if (mediaPlayer != null) {
            mediaPlayer.setVolume(volume);
        }
    }

    public static void main(String[] args) {
        launch(args);
    }
}