?? mp3player.java
字號:
playerCTL.pause();
}else if(playBtnState == Mp3Enum.PAUSE){
getPlayButton().setText("||");
playBtnState = Mp3Enum.RESUME;
playerCTL.resume();
}
}
private void dealPlayBtn2(){
getPlayButton().setText("||");
playBtnState = Mp3Enum.PLAY;
playSelectedSong();
}
private void playSelectedSong(){
int selectedIndex = getCurrentSelectedIndex();
if(selectedIndex >= 0){
playerCTL.stop();
String selectedSong = getPlayList().getItem(selectedIndex);
SongVO sv= (SongVO)songMap.get(selectedSong);
String songPath = sv.getPath();
playerCTL.openSong(songPath);
playerCTL.play();
setVolumn();
totalTimeLabel.setText(secondToTime((int)playerCTL.getTotalTimeSecond()));
scrollSongName();
}
}
private int getCurrentSelectedIndex(){
int selectedIndex = getPlayList().getSelectedIndex();
if(selectedIndex < 0){
if(getPlayList().getItemCount() > 0){
selectedIndex = 0;
getPlayList().select(selectedIndex);
}
}
return selectedIndex;
}
private int getNextSongIndex(){
int nextIndex = -1;
int currentindex = getCurrentSelectedIndex();
if(currentindex >= 0){
boolean isCircle = getCircleCheckBox().isSelected();
boolean isShuffle = getShuffleCheckBox().isSelected();
if(!isShuffle){
if(isCircle){
if(currentindex == getPlayList().getItemCount() - 1){
nextIndex = 0;
}else{
nextIndex = currentindex + 1;
}
}else{
if(currentindex == getPlayList().getItemCount() - 1){
nextIndex = currentindex;
}else{
nextIndex = currentindex + 1;
}
}
}else{
nextIndex = new Random().nextInt(getPlayList().getItemCount());
}
}
return nextIndex;
}
private int getPreviousSongIndex(){
int previousIndex = -1;
int currentindex = getCurrentSelectedIndex();
if(currentindex >= 0){
boolean isCircle = getCircleCheckBox().isSelected();
boolean isShuffle = getShuffleCheckBox().isSelected();
if(!isShuffle){
if(isCircle){
if(currentindex == 0){
previousIndex = getPlayList().getItemCount() - 1;
}else{
previousIndex = currentindex - 1;
}
}else{
if(currentindex == 0){
previousIndex = currentindex;
}else{
previousIndex = currentindex - 1;
}
}
}else{
previousIndex = new Random().nextInt(getPlayList().getItemCount());
}
}
return previousIndex;
}
private void scrollSongName(){
if(scrollThread != null){
scrollThread.setCanStop(true);
}
scrollThread = new ScrollThread(nameLabel,getPlayList().getSelectedItem());
scrollThread.start();
}
/**
* This method initializes previousButton
*
* @return javax.swing.JButton
*/
private JButton getPreviousButton() {
if (previousButton == null) {
previousButton = new JButton();
previousButton.setBounds(new Rectangle(52, 104, 49, 19));
previousButton.setText("<<");
previousButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
int previousIndex = getPreviousSongIndex();
getPlayList().select(previousIndex);
dealPlayBtn2();
}
});
}
return previousButton;
}
/**
* This method initializes nextButton
*
* @return javax.swing.JButton
*/
private JButton getNextButton() {
if (nextButton == null) {
nextButton = new JButton();
nextButton.setBounds(new Rectangle(145, 104, 50, 19));
nextButton.setText(">>");
nextButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
int nextIndex = getNextSongIndex();
getPlayList().select(nextIndex);
dealPlayBtn2();
}
});
}
return nextButton;
}
/**
* This method initializes cutButton
*
* @return javax.swing.JButton
*/
private JButton getCutButton() {
if (cutButton == null) {
cutButton = new JButton();
cutButton.setBounds(new Rectangle(165, 60, 53, 16));
cutButton.setText("cut");
cutButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
showCutFrame();
}
});
}
return cutButton;
}
private void showCutFrame(){
if(cutFrameState == Mp3Enum.CUTFRAME_HIDE){
cutFrameState = Mp3Enum.CUTFRAME_SHOW;
if(mergeFrameState == Mp3Enum.MERGEFRAME_HIDE){
getCutFrame().setLocation(this.getX()+this.getWidth(), this.getY());
}else{
getCutFrame().setLocation(getMergeFrame().getX(),getMergeFrame().getY()+getMergeFrame().getHeight());
}
getCutFrame().setVisible(true);
}else{
cutFrameState = Mp3Enum.CUTFRAME_HIDE;
getCutFrame().setVisible(false);
}
}
/**
* This method initializes mergeButton
*
* @return javax.swing.JButton
*/
private JButton getMergeButton() {
if (mergeButton == null) {
mergeButton = new JButton();
mergeButton.setBounds(new Rectangle(220, 60, 72, 16));
mergeButton.setText("merge");
mergeButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
showMergeFrame();
}
});
}
return mergeButton;
}
private void showMergeFrame(){
if(mergeFrameState == Mp3Enum.MERGEFRAME_HIDE){
mergeFrameState = Mp3Enum.MERGEFRAME_SHOW;
if(cutFrameState == Mp3Enum.CUTFRAME_HIDE){
getMergeFrame().setLocation(this.getX()+this.getWidth(), this.getY());
}else{
getMergeFrame().setLocation(getCutFrame().getX(),getCutFrame().getY()+getCutFrame().getHeight());
}
getMergeFrame().setVisible(true);
}else{
mergeFrameState = Mp3Enum.CUTFRAME_HIDE;
getMergeFrame().setVisible(false);
}
}
/**
* This method initializes playListFrame
*
* @return javax.swing.JFrame
*/
private JFrame getPlayListFrame() {
if (playListFrame == null) {
playListFrame = new JFrame();
playListFrame.setSize(new Dimension(305, 215));
playListFrame.setTitle("playlist");
playListFrame.setContentPane(getJContentPane());
playListFrame.setResizable(false);
windowDragControl.addSubWindow(playListFrame);
}
return playListFrame;
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getPlayList(), null);
jContentPane.add(getAddButton(), null);
jContentPane.add(getRemoveButton(), null);
}
return jContentPane;
}
/**
* This method initializes playList
*
* @return javax.swing.JList
*/
private List getPlayList() {
if (playList == null) {
playList = new List();
playList.setBounds(new Rectangle(4, 3, 289, 148));
playList.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
if(e.getClickCount() == 2){
dealPlayBtn2();
}
}
});
}
return playList;
}
/**
* This method initializes addButton
*
* @return javax.swing.JButton
*/
private JButton getAddButton() {
if (addButton == null) {
addButton = new JButton();
addButton.setBounds(new Rectangle(8, 158, 67, 20));
addButton.setText("add");
addButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
addFileToList();
}
});
}
return addButton;
}
/**
* This method initializes removeButton
*
* @return javax.swing.JButton
*/
private JButton getRemoveButton() {
if (removeButton == null) {
removeButton = new JButton();
removeButton.setBounds(new Rectangle(78, 157, 78, 21));
removeButton.setText("remove");
removeButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
removeFileFromList();
}
});
}
return removeButton;
}
/**
* This method initializes cutFrame
*
* @return javax.swing.JFrame
*/
private JFrame getCutFrame() {
if (cutFrame == null) {
cutFrame = new JFrame();
cutFrame.setSize(new Dimension(304, 181));
cutFrame.setTitle("mp3cuter");
cutFrame.setContentPane(getJContentPane1());
cutFrame.setResizable(false);
windowDragControl.addSubWindow(cutFrame);
}
return cutFrame;
}
/**
* This method initializes jContentPane1
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane1() {
if (jContentPane1 == null) {
jLabel1 = new JLabel();
jLabel1.setBounds(new Rectangle(245, 50, 39, 18));
jLabel1.setText("end");
jLabel = new JLabel();
jLabel.setBounds(new Rectangle(246, 19, 38, 18));
jLabel.setText("start");
jContentPane1 = new JPanel();
jContentPane1.setLayout(null);
jContentPane1.add(getStartSlider(), null);
jContentPane1.add(getEndSlider(), null);
jContentPane1.add(jLabel, null);
jContentPane1.add(jLabel1, null);
jContentPane1.add(getCutFilePath(), null);
jContentPane1.add(getCutPathButton(), null);
jContentPane1.add(getCutExecButton(), null);
}
return jContentPane1;
}
/**
* This method initializes mergeFrame
*
* @return javax.swing.JFrame
*/
private JFrame getMergeFrame() {
if (mergeFrame == null) {
mergeFrame = new JFrame();
mergeFrame.setSize(new Dimension(305, 265));
mergeFrame.setTitle("mp3merge");
mergeFrame.setContentPane(getJContentPane2());
mergeFrame.setResizable(false);
windowDragControl.addSubWindow(mergeFrame);
}
return mergeFrame;
}
/**
* This method initializes jContentPane2
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane2() {
if (jContentPane2 == null) {
jContentPane2 = new JPanel();
jContentPane2.setLayout(null);
jContentPane2.add(getAddMergeButton(), null);
jContentPane2.add(getRemoveMergeButton(), null);
jContentPane2.add(getMergeList(), null);
jContentPane2.add(getMergedFilePath(), null);
jContentPane2.add(getMergePathButton(), null);
jContentPane2.add(getMergeExecButton(), null);
}
return jContentPane2;
}
private class PlayerCTL extends PlayerControl{
protected void update(){
if(!progressSliderDrag){
getProcessSlider().setValue((int)Math.round(getProcessSlider().getMaximum()*playedRate()));
}
playLabel.setText(secondToTime((int)Math.round(getTotalTimeSecond()*playedRate())));
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -