pastefile1
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);
}
}