本文實(shí)例為大家分享了Java音樂(lè)播放器展示的具體代碼,供大家參考,具體內(nèi)容如下
為臺(tái)安等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及臺(tái)安網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站制作、成都網(wǎng)站建設(shè)、臺(tái)安網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
package KKMusic; import java.applet.Applet; import java.applet.AudioClip; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import java.awt.CardLayout; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.sound.sampled.FloatControl; import javax.sound.sampled.SourceDataLine; import javax.swing.GroupLayout; import javax.swing.GroupLayout.Alignment; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.LayoutStyle.ComponentPlacement; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import java.awt.event.ItemListener; import java.io.File; import java.net.MalformedURLException; import java.net.URL; import java.awt.event.ItemEvent; import javax.swing.JMenu; import javax.swing.JTextField; import javax.swing.SwingConstants; import javax.swing.JSlider; import java.awt.event.MouseMotionAdapter; import java.awt.event.MouseEvent; public class Mp3 extends JFrame { private JPanel contentPane; File file;//聲明文件對(duì)象 String filename; JFileChooser chooser=new JFileChooser();//創(chuàng)建一個(gè)文件選擇器 private JTextField xiaoxi; boolean loop=false; AudioClip adc;//聲音音頻剪輯對(duì)象 SourceDataLine line; private FloatControl volume = null; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Mp3 frame = new Mp3(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public Mp3() { setTitle("\u97F3\u4E50\u64AD\u653E\u5668"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 265, 333); JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); JMenu mnNewMenu = new JMenu("\u6587\u4EF6"); menuBar.add(mnNewMenu); xiaoxi = new JTextField(); xiaoxi.setColumns(10); xiaoxi.setText("歡迎使用本播放器"); JMenuItem dakai = new JMenuItem("\u6253\u5F00"); dakai.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int value=chooser.showOpenDialog(chooser);//接受文件選擇器的狀態(tài) if(value==chooser.APPROVE_OPTION){ file=chooser.getSelectedFile();//返回選中文件 filename=file.getName(); String flag=filename; xiaoxi.setText(flag); try { if(adc!=null) adc.stop(); URL url=new URL("file:"+file.getPath());//創(chuàng)建資源定位 adc=Applet.newAudioClip(url); //adc.play(); } catch (MalformedURLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); System.out.println("不能播放!"); } } } }); mnNewMenu.add(dakai); JMenuItem tuichu = new JMenuItem("\u9000\u51FA"); tuichu.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { dispose(); if(adc!=null) adc.stop(); return ; } }); mnNewMenu.add(tuichu); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); JButton playbtn = new JButton("\u64AD\u653E"); playbtn.setHorizontalAlignment(SwingConstants.LEFT); playbtn.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String flag="正在播放:"+filename; if(adc==null){ flag="請(qǐng)選擇播放的音樂(lè)"; xiaoxi.setText(flag); return; } adc.play(); xiaoxi.setText(flag); } }); JButton stopbtn = new JButton("\u6682\u505C"); stopbtn.setHorizontalAlignment(SwingConstants.LEFT); stopbtn.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { adc.stop(); String flag="停止播放音樂(lè):"+filename; xiaoxi.setText(flag); } }); JButton againbtn = new JButton("\u5FAA\u73AF"); againbtn.setHorizontalAlignment(SwingConstants.LEFT); againbtn.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { loop =!loop; String flag=""; ; if(loop){ adc.play(); adc.loop();//循環(huán)播放 flag="循環(huán)播放:"+filename; } else{ adc.play(); flag="順序播放"+filename; } xiaoxi.setText(flag); } }); GroupLayout gl_contentPane = new GroupLayout(contentPane); gl_contentPane.setHorizontalGroup( gl_contentPane.createParallelGroup(Alignment.LEADING) .addGroup(gl_contentPane.createSequentialGroup() .addContainerGap() .addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING, false) .addComponent(xiaoxi, Alignment.LEADING) .addGroup(Alignment.LEADING, gl_contentPane.createSequentialGroup() .addComponent(playbtn, GroupLayout.PREFERRED_SIZE, 64, GroupLayout.PREFERRED_SIZE) .addPreferredGap(ComponentPlacement.UNRELATED) .addComponent(stopbtn, GroupLayout.PREFERRED_SIZE, 66, GroupLayout.PREFERRED_SIZE) .addPreferredGap(ComponentPlacement.UNRELATED) .addComponent(againbtn, GroupLayout.PREFERRED_SIZE, 64, GroupLayout.PREFERRED_SIZE))) .addContainerGap(15, Short.MAX_VALUE)) ); gl_contentPane.setVerticalGroup( gl_contentPane.createParallelGroup(Alignment.TRAILING) .addGroup(gl_contentPane.createSequentialGroup() .addComponent(xiaoxi, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) .addPreferredGap(ComponentPlacement.UNRELATED) .addPreferredGap(ComponentPlacement.RELATED, 173, Short.MAX_VALUE) .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE) .addComponent(playbtn) .addComponent(stopbtn) .addComponent(againbtn)) .addContainerGap()) ); contentPane.setLayout(gl_contentPane); } }
運(yùn)行結(jié)果如下:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
新聞名稱(chēng):一個(gè)簡(jiǎn)單的Java音樂(lè)播放器
文章鏈接:http://chinadenli.net/article32/giohsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、網(wǎng)站內(nèi)鏈、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)