Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno JavaFX Media Player

Díky, už jsem na to došel

import java.io.File;
import javafx.embed.swing.JFXPanel;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;

public class Player {

private static int pocet;
private static Media hit;
private static MediaPlayer mediaPlayer;
private static File[] listFiles;

public static void player() {
pocet = 0;
new JFXPanel();
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileFilter(new FileNameExtensionFilter("Music", "mp3", "wav"));
fileChooser.setControlButtonsAreShown(false);
fileChooser.setCurrentDirectory(new File("C:\\"));
fileChooser.showOpenDialog(null);
String musicFile = fileChooser.getSelectedFile().getParent();
File dir = new File(musicFile);
listFiles = dir.listFiles((File dir1, String name) -> {
String pripona = name.toLowerCase().substring(name.length() - 3);
return pripona.equals("mp3") || pripona.equals("wav");
});
play();
}

private static void play() {
pocet += 1;
if (pocet < listFiles.length + 1) {
hit = new Media(new File(listFiles[pocet - 1].toString()).toURI().toString());
mediaPlayer = new MediaPlayer(hit);
mediaPlayer.setOnEndOfMedia(() -> play());
mediaPlayer.play();
} else {
player();
}
}
}

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny