亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? playlist.java

?? mp3播放功能
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package MP3;

/**
 *It imports two packages from the Package Function ,So
 *that it can put the songs to the list and delete them.
 *The other packages are from the Java System that support the appearance and the button events.
 *@see www.java.com
 *@version since 1.0
 *
 */
import java.awt.*;
import java.awt.event.*;
import java.io.*;

import java.util.HashMap;

import javax.swing.*;
import javax.swing.event.*;

import Function.SongString;
import Function.SongType;

import com.jgoodies.forms.factories.*;
import com.jgoodies.forms.layout.*;

/**
 * This class describes the playlist of Mp3 including the buttons,popupmenu and
 * a menu to chage the skill. It extends JFrame ,Created by JFormDesigner on Thu
 * Jul 10 21:35:01 CST 2008
 * 
 * @author ChenXiaoling
 * @author DuXiaojing
 */
public class Playlist extends JFrame {

	SpectrumTimeAnalyzer spectrum = new SpectrumTimeAnalyzer();

	/**
	 * Constructer of the class . Make the JFrame not hava the title bar. Set
	 * the size and make it unchangable Call the method initComponents() to init
	 * all the components.
	 * 
	 */
	public Playlist() {
		this.setUndecorated(true);
		initComponents();
		setSize(295, 271);
		setResizable(false);
	}

	/**
	 * When you press the Add button ,then invoke this method. Call the method
	 * to add the songs to the list.
	 * 
	 */
	private void AddActionPerformed() {
		// TODO add your code here
		addFileToList();
		LoadToFile();
	}

	/**
	 * Use a protected hashmap to save the song you want to put into the list
	 * SongString can save each song after invoke the method loadFiles() Each
	 * song can not be duplicated.
	 * 
	 * @see Function.SontString
	 * 
	 */
	protected void addFileToList() {
		SongString[] AllSongs = loadFiles();
		if (AllSongs != null) {
			for (int i = 0; i < AllSongs.length; i++) {
				if (!hashmap.containsKey(AllSongs[i].getName())) {
					hashmap.put(AllSongs[i].getName(), AllSongs[i]);
					Playlist.add(AllSongs[i].getName());
				}
			}
		}
	}

	/**
	 * This method is used to load the files from the computer itself.
	 * 
	 * @see JFileChooser
	 * @see SongString
	 * @return <code>the SongString array</code> if you choose some<code>null</code>
	 *         otherwise.
	 */
	protected SongString[] loadFiles() {
		JFileChooser chooser = new JFileChooser();
		chooser.setMultiSelectionEnabled(true);
		chooser.setFileFilter(new SongType());
		int returnVal = chooser.showOpenDialog(this);
		if (returnVal == JFileChooser.APPROVE_OPTION) {
			File[] selectedFiles = chooser.getSelectedFiles();
			SongString[] songNames = new SongString[selectedFiles.length];
			for (int i = 0; i < songNames.length; i++) {
				songNames[i] = new SongString(selectedFiles[i].getName(),
						selectedFiles[i].getAbsolutePath());
			}
			return songNames;
		} else {
			return null;
		}

	}

	/**
	 * When pressing the delete button ,invoke Call the method removeFile()
	 * 
	 */
	private void DeleteActionPerformed() {
		// TODO add your code here
		removeFile();
		LoadToFile();
	}

	/**
	 * Use the Hashmap object to remove the selected,and also remove it from the
	 * list
	 * 
	 * @see HashMap
	 */
	private void removeFile() {
		String[] selected = Playlist.getSelectedItems();
		for (int i = 0; i < selected.length; i++) {
			Playlist.remove(selected[i]);
			hashmap.remove(selected[i]);
		}
	}

	public void AddListActionPerformed() {
		String name = JOptionPane
				.showInputDialog("Input the name of the List:");
		if (name != null) {
			while(model.contains(name))
				name = JOptionPane
				.showInputDialog("Have one already,Input the name again:");
			   model.addElement(name);
			file = new File(name + ".dat");
			while(!file.exists())
				try {
					file.createNewFile();
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
		}
		Playlist1.setSelectedIndex(model.getSize()-1);
	}

	public void DeleteListActionPerformed() {
		int n = Playlist1.getSelectedIndex();
		if(n==0)
			Playlist1.setSelectedIndex(1);
		else
			Playlist1.setSelectedIndex(0);
		model.remove(n);
		Playlist.removeAll();
	//	SwingUtilities.updateComponentTreeUI(this);
	}

	public void LoadToFile() {  // 加載對應(yīng)列表的文件
		int count = Playlist.getItemCount();
		try {
			output = new ObjectOutputStream(new FileOutputStream(model.get(Playlist1.getSelectedIndex())
					+ ".dat"));
			String order;
			SongString song;
			for (int i = 0; i < count; i++) {
				order = Playlist.getItem(i);
				song = (SongString) hashmap.get(order);
				record = new Record(order, song.getPath());
				output.writeObject(record);
				output.flush();
			}
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public void Reload(String name) {
		// =============裝載原有列表==================
		try {
			input = new ObjectInputStream(new FileInputStream(name + ".dat"));
			record = new Record();
			record = (Record) input.readObject();
			hashmap.clear();
			while (record != null) {
				hashmap.put(record.getName(), new SongString(record.getName(),
						record.getPath()));
				Playlist.add(record.getName());
				record = (Record) input.readObject();
			}
		} catch (EOFException end) {
			try {
				input.close();
			} catch (IOException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		} catch (FileNotFoundException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		} catch (IOException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	public void ListValueChanged() {
		Playlist.removeAll();
		String name = (String) model.get(Playlist1.getSelectedIndex());
		Reload(name);
	}

	/**
	 * Add all components into the playlist List object Playlist to show the
	 * songs ScrollPane object scrollPane1 to add to the Playlist Button object
	 * Add to add the songs Button object Delete to delete the song you selected
	 * JMenu object Skin including JMenuItem object
	 * Green,Challenger,RavenGra,Raven,Autumn to change the skin of the MP3
	 * PopupMenu object popup to add to the Playlist Add the listeners to each
	 * components
	 * 
	 * Use FormLayout to layout all the components.
	 * 
	 * @see FormLayout
	 * @author ChenXiaoling
	 * @author DuXiaojing
	 */
	private void initComponents() {
		// JFormDesigner - Component initialization - DO NOT MODIFY
		// //GEN-BEGIN:initComponents
		// Generated using JFormDesigner non-commercial license
		// vector = new Vector();
		model = new DefaultListModel();
		scrollPane1 = new ScrollPane();
		Playlist1 = new JList(model);
		scrollPane2 = new JScrollPane();
		Playlist = new List();
		panel2 = new JPanel();
		panel1 = new JPanel();
		Add = new JButton();
		Delete = new JButton();
		AddList = new JButton();
		DeleteList = new JButton();
		Skin = new JMenu("Skin");
		Green = new JRadioButtonMenuItem("Default");
		Challenger = new JRadioButtonMenuItem("ChallengerDeep");
		RavenGra = new JRadioButtonMenuItem("RavenGraphite");
		Raven = new JRadioButtonMenuItem("Raven");
		Autumn = new JRadioButtonMenuItem("Autumn");
		bar = new JMenuBar();
		panel = new JPanel();

		hashmap = new HashMap();
		popup = new PopupMenu();
		popup1 = new PopupMenu();

		CellConstraints cc = new CellConstraints();

		// =========popup=============
		String list[] = { "Add songs", "Delete songs" };
		MenuItem add = new MenuItem(list[0]);
		MenuItem delete = new MenuItem(list[1]);
		popup.add(add);
		popup.add(delete);
		add.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				AddActionPerformed();
			}
		});
		delete.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				DeleteActionPerformed();
			}
		});
		Playlist.addMouseListener(new MouseAdapter() {
			public void mousePressed(MouseEvent e) {
				check(e);
			}

			public void mouseReleased(MouseEvent e) {
				check(e);
			}

			private void check(MouseEvent e) {

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美中文字幕精品| 国产在线视频一区二区| 麻豆国产一区二区| 国产精品一卡二卡| 97国产一区二区| 7777精品伊人久久久大香线蕉经典版下载 | 成人va在线观看| 在线日韩av片| 欧美成人三级在线| 综合色中文字幕| 日韩精品成人一区二区在线| 国产精品中文字幕日韩精品| 色噜噜狠狠色综合中国| 日韩一区二区三区高清免费看看 | a亚洲天堂av| 欧美视频中文字幕| 久久综合久久综合久久综合| 亚洲美女淫视频| 久色婷婷小香蕉久久| av影院午夜一区| 欧美一级欧美三级在线观看| 国产嫩草影院久久久久| 日韩电影网1区2区| 丁香天五香天堂综合| 欧美日韩国产高清一区| 中文字幕第一区第二区| 青娱乐精品在线视频| 99re成人精品视频| 日韩欧美一级精品久久| 亚洲欧美一区二区久久| 精品一区二区国语对白| 欧美日韩一级二级三级| 欧美国产成人在线| 日韩不卡一二三区| 94-欧美-setu| 精品一区二区三区在线播放| 91丨porny丨蝌蚪视频| 精品欧美乱码久久久久久1区2区| 亚洲精品视频一区| 国产激情一区二区三区| 欧美一区二区三区四区在线观看 | 日本韩国精品在线| 久久精品人人爽人人爽| 日本成人在线网站| 欧美一a一片一级一片| **网站欧美大片在线观看| 精品一区二区三区在线观看| 欧美日韩久久一区| 亚洲三级电影全部在线观看高清| 国产成人自拍网| 日韩一区二区电影| 亚洲亚洲精品在线观看| 99re热视频精品| 欧美国产禁国产网站cc| 国产乱人伦精品一区二区在线观看| 欧美日韩性生活| 亚洲欧美日韩电影| a在线欧美一区| 亚洲国产经典视频| 国产成人夜色高潮福利影视| 欧美tickling挠脚心丨vk| 五月天久久比比资源色| 91久久久免费一区二区| 亚洲天堂福利av| 成人aaaa免费全部观看| www.激情成人| 中文字幕av一区二区三区| 国产乱对白刺激视频不卡| 欧美大尺度电影在线| 日本美女视频一区二区| 欧美一级欧美三级| 美女视频免费一区| 日韩精品一区二| 精品夜夜嗨av一区二区三区| 欧美精品一区二区三区视频| 久久国产视频网| 欧美成人精品福利| 久久精品国产第一区二区三区| 欧美一区二区免费| 久久精品噜噜噜成人av农村| 日韩欧美成人激情| 日本免费在线视频不卡一不卡二| 欧美一卡二卡在线观看| 蜜乳av一区二区三区| 日韩一区二区电影| 国产一区二区在线观看免费| 国产天堂亚洲国产碰碰| gogogo免费视频观看亚洲一| 亚洲欧洲av色图| 97精品久久久久中文字幕| 亚洲永久免费视频| 欧美日韩免费一区二区三区| 天天操天天综合网| 日韩欧美在线综合网| 国产麻豆视频精品| 中文字幕欧美日韩一区| 91免费版在线看| 午夜欧美在线一二页| 欧美videos大乳护士334| 韩日av一区二区| 亚洲国产经典视频| 色综合久久中文字幕| 图片区小说区国产精品视频 | 国产精品538一区二区在线| 国产亚洲成av人在线观看导航| 99精品视频在线观看免费| 亚洲综合999| 91精品国产一区二区| 国产精品综合av一区二区国产馆| 欧美国产综合一区二区| 91成人看片片| 久久国产综合精品| 亚洲天堂福利av| 蜜桃视频第一区免费观看| 精品国产免费人成电影在线观看四季 | 日本道精品一区二区三区| 天堂久久一区二区三区| 久久综合丝袜日本网| 91老师片黄在线观看| 六月丁香婷婷久久| 一区精品在线播放| 日韩小视频在线观看专区| www.亚洲色图.com| 免费不卡在线观看| 自拍av一区二区三区| 日韩欧美123| 99精品黄色片免费大全| 免费高清在线视频一区·| 中文字幕在线一区免费| 8v天堂国产在线一区二区| 国产精品亚洲综合一区在线观看| 亚洲精品视频一区| 2020日本不卡一区二区视频| 在线观看日韩精品| 国产综合久久久久影院| 亚洲成av人片www| 国产精品―色哟哟| 欧美一区中文字幕| 色综合久久久久综合体| 国产乱人伦偷精品视频免下载| 亚洲成人av一区二区三区| 国产精品每日更新在线播放网址| 欧美一区二区三区免费视频 | 欧美三级在线播放| 成人开心网精品视频| 久久se精品一区二区| 亚洲综合在线观看视频| 国产区在线观看成人精品| 日韩一区二区在线观看视频| 在线观看一区二区视频| 成人综合婷婷国产精品久久免费| 蜜臀久久99精品久久久久宅男| 亚洲精品视频免费观看| 国产精品日产欧美久久久久| 精品欧美乱码久久久久久| 欧美日本韩国一区二区三区视频| a在线播放不卡| 国产91精品久久久久久久网曝门| 日本在线观看不卡视频| 亚洲午夜一区二区三区| 亚洲女与黑人做爰| 国产精品国产三级国产普通话蜜臀 | 洋洋成人永久网站入口| 国产精品国产三级国产aⅴ中文| 2021国产精品久久精品| 欧美成人乱码一区二区三区| 777亚洲妇女| 欧美精选一区二区| 日本黄色一区二区| 91女人视频在线观看| 成人精品免费视频| 国产黑丝在线一区二区三区| 国内外成人在线视频| 老色鬼精品视频在线观看播放| 日韩中文字幕区一区有砖一区| 一个色在线综合| 亚洲欧美激情在线| 国产精品国产馆在线真实露脸 | 成人18视频日本| 风间由美一区二区av101 | 日韩理论片在线| 中文字幕一区二区不卡| 中文字幕免费不卡| 国产欧美一区二区精品忘忧草| 久久亚区不卡日本| 久久久99久久| 高清成人免费视频| 国产激情偷乱视频一区二区三区| 国产精品一区二区91| 国产成人亚洲综合色影视| 国产传媒欧美日韩成人| 国产成人免费视频网站高清观看视频 | 91搞黄在线观看| 色94色欧美sute亚洲线路一久 | 视频一区二区国产| 亚洲第一av色| 视频在线观看一区二区三区| 麻豆精品一区二区综合av| 激情久久五月天| 国产精品 日产精品 欧美精品|