JavaFX2.0 MediaPlayer 播放器

转运四方海淘网

import java.io.Closeable;

import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.stage.WindowEvent;

/**
 *
 * @author Administrator
 */
public class Mymedia extends Application {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Application.launch(Mymedia.class, args);
    }
    public  String[]  music={"1.mp3","4.mp3","5.mp3","11.mp3","22.mp3","2.mp3","3.mp3",};
    public static  int i=0;
    public void start(final Stage stage) {
        final Group g=new Group();
        final Scene scene=new Scene(g,250,100,Color.rgb(54, 138, 201));
        final MediaPlayer[] mediaPlayers=new MediaPlayer[music.length];
        final ImageView playButton=new ImageView();
        final ImageView beforeButton=new ImageView();
        final ImageView afterButton=new ImageView();
        final Image Play=new Image("src/Images/play.png");
        final Image Stop=new Image("src/Images/pause.png");
        final Image before=new Image("src/Images/before.png");
        final Image after=new Image("src/Images/next.png");
        playButton.setImage(Play);
        playButton.setTranslateX(scene.getWidth()/2-20);
        playButton.setTranslateY(30);
        beforeButton.setImage(before);
        beforeButton.setTranslateX(scene.getWidth()/5-20);
        beforeButton.setTranslateY(30);
        afterButton.setImage(after);
        afterButton.setTranslateX(scene.getWidth()*3/4);
        afterButton.setTranslateY(30);
        for(int m=0;m<music.length;m++)
         {
            Media media=new Media(mymedia.Mymedia.class.getResource(music[m]).toExternalForm());
            mediaPlayers[m]=(new MediaPlayer(media));
         }
         playButton.setOnMouseClicked(new EventHandler<MouseEvent>()
               {
                    public void handle(MouseEvent e)
                    {
                        if(playButton.getImage()==Play)
                        {
                            mediaPlayers[i].stop();
                            playButton.setImage(Stop);
                            mediaPlayers[i].play();
                           
                        }
                        else
                        {
                            playButton.setImage(Play);
                            mediaPlayers[i].stop();
                        }
                    }
                 });
         beforeButton.setOnMouseClicked(new EventHandler<MouseEvent>()
                {
                    public  void handle(MouseEvent event)
                    {
                        if(i>0)
                        {
                            mediaPlayers[i].stop();
                            i--;
                            mediaPlayers[i].play();
                        }
                            
                        else
                        {
                            mediaPlayers[i].stop();
                            i=music.length-1;
                            mediaPlayers[i].play();
                        }
                    }
                });
          afterButton.setOnMouseClicked(new EventHandler<MouseEvent>()
                {
                    public  void handle(MouseEvent event)
                    {
                        if(i<music.length-1)
                        {
                           mediaPlayers[i].stop();
                            i++;
                          mediaPlayers[i].play();
                         }
                        else
                        {
                           mediaPlayers[i].stop();
                            i=0;
                           mediaPlayers[i].play();;
                        }
                    }
                }); 
            stage.setOnHidden(new  EventHandler<WindowEvent>() {
            public void handle(WindowEvent event) {
                 mediaPlayers[i].stop();
                
            }
        });
        g.getChildren().add(playButton);
        g.getChildren().add(beforeButton);
        g.getChildren().add(afterButton);
        stage.setTitle("Media");
        stage.setResizable(false);
        stage.setScene(scene);
        stage.setVisible(true);   
    }
}


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值