⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mediaplayer.java

📁 基于JMF实现的MediaPlayer.
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        });

        operationMenu.add(stopItem);

        jMenuBar1.add(operationMenu);

        editItem.setText("\u7f16\u8f91");
        onTopCheckItem.setText("\u603b\u662f\u7f6e\u9876");
        onTopCheckItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                onTopCheckItemActionPerformed(evt);
            }
        });

        editItem.add(onTopCheckItem);

        editItem.add(jSeparator1);

        metalLookAndFeel.setSelected(true);
        metalLookAndFeel.setText("Metal");
        metalLookAndFeel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                metalLookAndFeelActionPerformed(evt);
            }
        });

        editItem.add(metalLookAndFeel);

        MotifLookAndFeel.setText("Motif");
        MotifLookAndFeel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MotifLookAndFeelActionPerformed(evt);
            }
        });

        editItem.add(MotifLookAndFeel);

        windowsLookAndFeel.setText("Windows");
        windowsLookAndFeel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                windowsLookAndFeelActionPerformed(evt);
            }
        });

        editItem.add(windowsLookAndFeel);

        windowsClassicLookAndFeel.setText("WindowsClassic");
        windowsClassicLookAndFeel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                windowsClassicLookAndFeelActionPerformed(evt);
            }
        });

        editItem.add(windowsClassicLookAndFeel);

        customLookAndFeel.setText("CustomStyle");
        customLookAndFeel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                customLookAndFeelActionPerformed(evt);
            }
        });

        editItem.add(customLookAndFeel);

        jMenuBar1.add(editItem);

        helpMenu.setText("\u5e2e\u52a9");
        helpItem.setText("Help...");
        helpItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                helpItemActionPerformed(evt);
            }
        });

        helpMenu.add(helpItem);

        aboutItem.setText("About...");
        aboutItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                aboutItemActionPerformed(evt);
            }
        });

        helpMenu.add(aboutItem);

        jMenuBar1.add(helpMenu);

        setJMenuBar(jMenuBar1);

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .add(showLabel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 333, Short.MAX_VALUE)
                .addContainerGap())
            .add(org.jdesktop.layout.GroupLayout.TRAILING, upPanel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 353, Short.MAX_VALUE)
            .add(downPanel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                .add(upPanel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE)
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                .add(showLabel, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 32, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                .add(downPanel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void loopItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_loopItemActionPerformed
// TODO 将在此处添加您的处理代码:
        if(Loop==true)
            Loop=false;
        else
            Loop=true;
    }//GEN-LAST:event_loopItemActionPerformed

    private void helpItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_helpItemActionPerformed
// TODO 将在此处添加您的处理代码:
      String str="Help Dialog";
      HelpDialog help=new HelpDialog(this,str);
      help.setLocation(100,100);
      help.setVisible(true);
    }//GEN-LAST:event_helpItemActionPerformed

    private void stopItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_stopItemActionPerformed
// TODO 将在此处添加您的处理代码:
        destroyOldPlayer();
    }//GEN-LAST:event_stopItemActionPerformed
    private void MediaInit()//初始化音乐播放的曲目,使播放器一启动就自动播放第一首歌曲
    {
        if(indexOfList!=0)
        {
            index=0;
            doPlaySong(index);
        }
    }
    private void openDirItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_openDirItemActionPerformed
// TODO 将在此处添加您的处理代码:
        openDir();
    }//GEN-LAST:event_openDirItemActionPerformed

    private void openFileItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_openFileItemActionPerformed
// TODO 将在此处添加您的处理代码:
        openFile();
    }//GEN-LAST:event_openFileItemActionPerformed

    private void getPathItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_getPathItemActionPerformed
// TODO 将在此处添加您的处理代码:
        int tempIndex=fileList.getSelectedIndex();
        String tempPath=(String)vecPath.elementAt(tempIndex);
        String tempName=(String)vecName.elementAt(tempIndex);
        String info="乐曲名称: "+tempName+"\n"+"乐曲路径: "+tempPath+"\n";
        JOptionPane.showMessageDialog(null, info, "文件信息", JOptionPane.INFORMATION_MESSAGE);
        
    }//GEN-LAST:event_getPathItemActionPerformed

    private void delAllItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_delAllItemActionPerformed
// TODO 将在此处添加您的处理代码:
        vecPath.removeAllElements();
        vecName.removeAllElements();
        vecList.removeAllElements();
        downPanel.updateUI();
    }//GEN-LAST:event_delAllItemActionPerformed

    private void delItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_delItemActionPerformed
// TODO 将在此处添加您的处理代码:
        int tempIndex=fileList.getSelectedIndex();
        vecName.removeElementAt(tempIndex);
        vecPath.removeElementAt(tempIndex);
        vecList.removeElementAt(tempIndex);
        downPanel.updateUI();
    }//GEN-LAST:event_delItemActionPerformed

    private void fileListMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_fileListMouseReleased
// TODO 将在此处添加您的处理代码:
        checkPopup(evt);
    }//GEN-LAST:event_fileListMouseReleased
    private void openFile()
    {
          JFileChooser chooser=new JFileChooser();
         chooser.setCurrentDirectory(new File("F:\\"));
         int returnVal = chooser.showOpenDialog(this);
	 if(returnVal==chooser.APPROVE_OPTION)
	 {
            MusicInfo tempInfo;
            File file=chooser.getSelectedFile();
            String tempName=file.getName();//文件名
            String tempPath=file.getAbsolutePath();//路径名
            String tempExt=tempName.substring(tempName.lastIndexOf(".")+1);
            String tempDes="";
            tempInfo=new MusicInfo(tempName,tempExt,tempPath,tempDes);
            vecList.add(tempInfo);
            vecName.add(tempName);
            vecPath.add(tempPath);
	    System.out.println(file.getName());
	    System.out.println(file.getAbsolutePath());
            indexOfList++;
	 }
         else 
             return ;
         fileList.updateUI();
    }
    private void openDir()
    {
        JFileChooser fileChooser=new JFileChooser();
        fileChooser.setFileSelectionMode(fileChooser.DIRECTORIES_ONLY);
	int returnVal = fileChooser.showOpenDialog(this);
	if(returnVal==fileChooser.APPROVE_OPTION)
        {
           File file=fileChooser.getSelectedFile();
           String []subFile=file.list();
           for(String x:subFile)
           {
               MusicInfo tempMusicInfo;
               String tempName=x;//文件名
               String tempPath=file.getAbsolutePath()+"\\"+tempName;//路径名
               String tempExt=tempName.substring(tempName.lastIndexOf(".")+1);
               String tempDes="";
               tempMusicInfo=new MusicInfo(tempName,tempExt,tempPath,tempDes);
               vecList.add(tempMusicInfo);
               vecName.add(tempName);
               vecPath.add(tempPath);
               indexOfList++;
           }
        }
        else 
            return ;
        fileList.updateUI();
    }
    private void checkPopup(MouseEvent evt)
    {
       if(evt.isPopupTrigger())
        {
            index=fileList.locationToIndex(evt.getPoint());
            fileList.setSelectedIndex(index);
            mPop.show(fileList,evt.getX(),evt.getY());
        }
    }
    private void jScrollPane1MouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jScrollPane1MouseReleased
// TODO 将在此处添加您的处理代码:
      checkPopup(evt);
    }//GEN-LAST:event_jScrollPane1MouseReleased

    private void saveItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveItemActionPerformed
// TODO 将在此处添加您的处理代码: 
         tofile.save();
    }//GEN-LAST:event_saveItemActionPerformed
    private void destroyOldPlayer()
    {
        if(player==null)
        {
           return ;
        }
        player.stop(); 	    
    	player.deallocate();
        Component visualComponent =player.getVisualComponent();
	Component controlComponent=player.getControlPanelComponent();
       if(visualComponent!=null)
	{
            upPanel.remove(visualComponent);
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -