package com.dgit.qtts.main;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Date;
import java.util.Vector;
//这个包要用到JMF
import javax.media.bean.playerbean.MediaPlayer;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSlider;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.SwingConstants;
public class MP311 extends JFrame implements Runnable {
public JLabel shijian;
private JSlider sldDiameter;
public MediaPlayer soumd1;
public JButton playSound, loopSound, stopsound;
public JButton tjian, shanc, baocun, duqu;
public JPanel jp1, jp2, jp3, jp4;
public JList jl;
int zongmiao = 0;
public Vector vector, mingcheng;
boolean fo = false, geshi = false;
JLabel jl1, jl2, sj1, sj2;
JTextField jt1, jt2;
JButton queding, xiugai;
int zong = 0;
int a = 0, b = 0, you = 1, mm = 0;
int fenzhong, miaozhong;
public MP311() {
super("java简单音乐播放器");
soumd1 = new MediaPlayer();
Container c = getContentPane();
c.setLayout(new FlowLayout());
mingcheng = new Vector();
jp1 = new JPanel();
shijian = new JLabel();
jp1.add(shijian);
c.add(jp1);
playSound = new JButton("开始播放");
loopSound = new JButton("循环播放");
stopsound = new JButton("停止播放");
jp2 = new JPanel();
jp2.add(playSound);
jp2.add(loopSound);
jp2.add(stopsound);
c.add(jp2);
jp4 = new JPanel();
sj1 = new JLabel();
sj2 = new JLabel();
sldDiameter = new JSlider(SwingConstants.HORIZONTAL, 0, 100, 0);
sldDiameter.setMajorTickSpacing(1);
sldDiameter.setPaintTicks(true);
jp4.add(sj1);
jp4.add(sldDiameter);
jp4.add(sj2);
c.add(jp4);
vector = new Vector();
jl = new JList(mingcheng);
jl.setVisibleRowCount(5);
jl.setFixedCellHeight(40);
jl.setFixedCellWidth(265);
jl.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
c.add(new JScrollPane(jl));
tjian = new JButton("添加");
shanc = new JButton("删除");
duqu = new JButton("读取");
baocun = new JButton("保存");
jp3 = new JPanel();
jp3.add(tjian);
jp3.add(shanc);
jp3.add(baocun);
jp3.add(duqu);
c.add(jp3);
try {
String s = "c:\\music.txt";
ObjectInputStream input = new ObjectInputStream(new FileInputStream(s));
lujin a1 = (lujin) input.readObject();
mingcheng = a1.b;
vector = a1.a;
jl.setListData(mingcheng);
} catch (Exception e) {
System.out.println("c盘没有保存音乐文件");
// e.printStackTrace();
}
baocun.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
if (fileChooser.showSaveDialog(MP311.this) == JFileChooser.APPROVE_OPTION) { // 弹出文件选择器,并判断是否点击了打开按钮
String fileName = fileChooser.getSelectedFile().getAbsolutePath(); // 得到选择文件或目录的绝对路径
mmm(vector, mingcheng, fileName);
}
}
});
duqu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
if (fileChooser.showOpenDialog(MP311.this) == JFileChooser.APPROVE_OPTION) { // 弹出文件选择器,并判断是否点击了打开按钮
String fileName = fileChooser.getSelectedFile().getAbsolutePath(); // 得到选择文件或目录的绝对路径
try {
ObjectInputStream input = new ObjectInputStream(new FileInputStream(fileName));
lujin a1 = (lujin) input.readObject();
mingcheng = a1.b;
vector = a1.a;
jl.setListData(mingcheng);
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
playSound.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (jl.getSelectedIndex() >= 0) {
String yy = (String) vector.get(jl.getSelectedIndex());
System.out.println(yy);
File ff = new File(yy);
if (ff.exists()) {
if (yy.matches("[\\S\\s]*.wav") || yy.matches("[\\S\\s]*.wav")) {
if (soumd1 != null) {
a = 0;
b = 0;
you = 0;
soumd1.stop();
}
soumd1.setMediaLocation("file:/" + yy);
fo = true;
soumd1.start();
geshi = true;
try {
Thread.sleep(500);
} catch (InterruptedException eee) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
if (zongmiao > 10000) {
try {
Thread.sleep(500);
} catch (InterruptedException ew) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
}
zongmiao = (int) soumd1.getDuration().getSeconds();
String aa = fen(zongmiao);
sj2.setText(aa);
} else
JOptionPane.showMessageDialog(null, "播放文件格式的有错,无法播放 建议删除");
} else
JOptionPane.showMessageDialog(null, "此歌曲文件已经不存在,建议删除");
} else
JOptionPane.showMessageDialog(null, "请选择音乐文件");
}
});
loopSound.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (jl.getSelectedIndex() >= 0) {
String yy = (String) vector.get(jl.getSelectedIndex());
File ff = new File(yy);
if (ff.exists()) {
if (yy.matches("[\\S\\s]*.wav") || yy.matches("[\\S\\s]*.wav")) {
if (soumd1 != null) {
a = 0;
b = 0;
you = 0;
soumd1.stop();
}
soumd1.setMediaLocation("file:/" + yy);
fo = true;
soumd1.start();
geshi = true;
try {
Thread.sleep(500);
} catch (InterruptedException we) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
if (zongmiao > 10000) {
try {
Thread.sleep(500);
} catch (InterruptedException we) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
}
zongmiao = (int) soumd1.getDuration().getSeconds();
String aa = fen(zongmiao);
sj2.setText(aa);
} else
JOptionPane.showMessageDialog(null, "播放文件格式的有错,无法播放 建议删除");
} else
JOptionPane.showMessageDialog(null, "此歌曲文件已经不存在,建议删除");
} else
JOptionPane.showMessageDialog(null, "请选择音乐文件");
}
});
stopsound.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
a = 0;
b = 0;
you = 0;
mm = 0;
geshi = false;
fo = false;
sldDiameter.setMaximum(100);
sldDiameter.setValue(0);
sj1.setText(null);
sj2.setText(null);
if (jl.getSelectedIndex() >= 0)
soumd1.stop();
}
});
tjian.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
fileChooser.setCurrentDirectory(new File(".")); // 设置文件选择器当前目录
fileChooser.setFileFilter(new javax.swing.filechooser.FileFilter() {
public boolean accept(File file) { // 可接受的文件类型
String name = file.getName().toLowerCase();
return name.endsWith(".mp3") || file.isDirectory();
}
public String getDescription() { // 文件描述
return "音乐文件(*.mp3)";
}
});
if (fileChooser.showOpenDialog(MP311.this) == JFileChooser.APPROVE_OPTION) { // 弹出文件选择器,并判断是否点击了打开按钮
String fileName = fileChooser.getSelectedFile().getAbsolutePath(); // 得到选择文件或目录的绝对路径
vector.add(fileName);
StringBuffer buffer = daoxu(fileName);
mingcheng.add(buffer);
}
}
});
shanc.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
if (jl.getSelectedIndex() >= 0) {
mingcheng.removeElementAt(jl.getSelectedIndex());
vector.removeElementAt(jl.getSelectedIndex());
jl.setListData(mingcheng);
}
}
});
jl.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent event) {
if (event.getClickCount() == 2) {
if (jl.getSelectedIndex() >= 0) {
String yy = (String) vector.get(jl.getSelectedIndex());
File ff = new File(yy);
if (ff.exists()) {
if (yy.matches("[\\S\\s]*.wav") || yy.matches("[\\S\\s]*.wav")) {
if (soumd1 != null) {
a = 0;
b = 0;
you = 0;
soumd1.stop();
}
soumd1.setMediaLocation("file:/" + yy);
fo = true;
soumd1.start();
geshi = true;
try {
Thread.sleep(500);
} catch (InterruptedException e) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
if (zongmiao > 10000) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
}
String aa = fen(zongmiao);
sj2.setText(aa);
} else
JOptionPane.showMessageDialog(null, "播放文件格式的有错,无法播放 建议删除");
} else
JOptionPane.showMessageDialog(null, "此歌曲文件已经不存在,建议删除");
}
}
if (event.isMetaDown()) {
if (jl.getSelectedIndex() >= 0) {
int a = jl.getSelectedIndex();
xiugai x = new xiugai();
jt1.setText(mingcheng.get(jl.getSelectedIndex()) + "");
jt2.setText(vector.get(jl.getSelectedIndex()) + "");
}
}
}
});
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
String s = "c:\\music.txt";
mmm(vector, mingcheng, s);
System.exit(0);
}
});
setSize(300, 400);
setVisible(true);
}
public void run() {
while (true) {
Date now = new Date();
shijian.setText("当前时间: " + now.toString());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
}
if (geshi) {
you = (int) soumd1.getMediaTime().getSeconds();
mm = you % 60;
if (you != 0)
if (you % 60 == 0) {
b++;
}
sj1.setText(b + ":" + mm);
System.out.println(sj1.getText());
sldDiameter.setMaximum(zongmiao);
if (you != zongmiao)
sldDiameter.setValue(you);
else {
sldDiameter.setValue(0);
mm = 0;
b = 0;
}
}
}
}
public StringBuffer daoxu(String fileName) {
String mc = "";
for (int i = fileName.length(); i >= 1; i--) {
if (fileName.charAt(i - 1) == '\\')
break;
mc += fileName.charAt(i - 1);
}
StringBuffer buffer = new StringBuffer(mc);
StringBuffer mm = buffer.reverse();
return mm;
}
public void mmm(Vector vector, Vector mingcheng, String lujin) {
lujin a = new lujin(vector, mingcheng);
try {
ObjectOutputStream output = new ObjectOutputStream(new FileOutputStream(lujin));
output.writeObject(a);
output.flush();
output.close();
} catch (Exception e) {
}
}
public String fen(int yy) {
fenzhong = (int) yy / 60;
miaozhong = (int) yy % 60;
String sss = fenzhong + ":" + miaozhong;
return sss;
}
public static void main(String agrs[]) {
MP311 s = new MP311();
Thread t1 = new Thread(s);
t1.start();
s.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
class xiugai extends JFrame {
public xiugai() {
jl1 = new JLabel("文件名");
jt1 = new JTextField(20);
jl2 = new JLabel("文件路径");
jt2 = new JTextField(20);
xiugai = new JButton("修改");
Container c = getContentPane();
c.setLayout(new GridLayout(3, 1));
JPanel j1 = new JPanel();
JPanel j2 = new JPanel();
JPanel j3 = new JPanel();
j1.add(jl1);
j1.add(jt1);
j2.add(jl2);
j2.add(jt2);
j3.add(xiugai);
c.add(j1);
c.add(j2);
c.add(j3);
xiugai.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
mingcheng.setElementAt(jt1.getText(), jl.getSelectedIndex());
vector.setElementAt(jt2.getText(), jl.getSelectedIndex());
jl.setListData(mingcheng);
dispose();
}
});
setSize(300, 120);
setVisible(true);
}
}
}
class lujin implements Serializable {
Vector a = new Vector();
Vector b = new Vector();
public lujin(Vector vector, Vector mingcheng) {
a = vector;
b = mingcheng;
}
}
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Date;
import java.util.Vector;
//这个包要用到JMF
import javax.media.bean.playerbean.MediaPlayer;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSlider;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.SwingConstants;
public class MP311 extends JFrame implements Runnable {
public JLabel shijian;
private JSlider sldDiameter;
public MediaPlayer soumd1;
public JButton playSound, loopSound, stopsound;
public JButton tjian, shanc, baocun, duqu;
public JPanel jp1, jp2, jp3, jp4;
public JList jl;
int zongmiao = 0;
public Vector vector, mingcheng;
boolean fo = false, geshi = false;
JLabel jl1, jl2, sj1, sj2;
JTextField jt1, jt2;
JButton queding, xiugai;
int zong = 0;
int a = 0, b = 0, you = 1, mm = 0;
int fenzhong, miaozhong;
public MP311() {
super("java简单音乐播放器");
soumd1 = new MediaPlayer();
Container c = getContentPane();
c.setLayout(new FlowLayout());
mingcheng = new Vector();
jp1 = new JPanel();
shijian = new JLabel();
jp1.add(shijian);
c.add(jp1);
playSound = new JButton("开始播放");
loopSound = new JButton("循环播放");
stopsound = new JButton("停止播放");
jp2 = new JPanel();
jp2.add(playSound);
jp2.add(loopSound);
jp2.add(stopsound);
c.add(jp2);
jp4 = new JPanel();
sj1 = new JLabel();
sj2 = new JLabel();
sldDiameter = new JSlider(SwingConstants.HORIZONTAL, 0, 100, 0);
sldDiameter.setMajorTickSpacing(1);
sldDiameter.setPaintTicks(true);
jp4.add(sj1);
jp4.add(sldDiameter);
jp4.add(sj2);
c.add(jp4);
vector = new Vector();
jl = new JList(mingcheng);
jl.setVisibleRowCount(5);
jl.setFixedCellHeight(40);
jl.setFixedCellWidth(265);
jl.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
c.add(new JScrollPane(jl));
tjian = new JButton("添加");
shanc = new JButton("删除");
duqu = new JButton("读取");
baocun = new JButton("保存");
jp3 = new JPanel();
jp3.add(tjian);
jp3.add(shanc);
jp3.add(baocun);
jp3.add(duqu);
c.add(jp3);
try {
String s = "c:\\music.txt";
ObjectInputStream input = new ObjectInputStream(new FileInputStream(s));
lujin a1 = (lujin) input.readObject();
mingcheng = a1.b;
vector = a1.a;
jl.setListData(mingcheng);
} catch (Exception e) {
System.out.println("c盘没有保存音乐文件");
// e.printStackTrace();
}
baocun.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
if (fileChooser.showSaveDialog(MP311.this) == JFileChooser.APPROVE_OPTION) { // 弹出文件选择器,并判断是否点击了打开按钮
String fileName = fileChooser.getSelectedFile().getAbsolutePath(); // 得到选择文件或目录的绝对路径
mmm(vector, mingcheng, fileName);
}
}
});
duqu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
if (fileChooser.showOpenDialog(MP311.this) == JFileChooser.APPROVE_OPTION) { // 弹出文件选择器,并判断是否点击了打开按钮
String fileName = fileChooser.getSelectedFile().getAbsolutePath(); // 得到选择文件或目录的绝对路径
try {
ObjectInputStream input = new ObjectInputStream(new FileInputStream(fileName));
lujin a1 = (lujin) input.readObject();
mingcheng = a1.b;
vector = a1.a;
jl.setListData(mingcheng);
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
playSound.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (jl.getSelectedIndex() >= 0) {
String yy = (String) vector.get(jl.getSelectedIndex());
System.out.println(yy);
File ff = new File(yy);
if (ff.exists()) {
if (yy.matches("[\\S\\s]*.wav") || yy.matches("[\\S\\s]*.wav")) {
if (soumd1 != null) {
a = 0;
b = 0;
you = 0;
soumd1.stop();
}
soumd1.setMediaLocation("file:/" + yy);
fo = true;
soumd1.start();
geshi = true;
try {
Thread.sleep(500);
} catch (InterruptedException eee) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
if (zongmiao > 10000) {
try {
Thread.sleep(500);
} catch (InterruptedException ew) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
}
zongmiao = (int) soumd1.getDuration().getSeconds();
String aa = fen(zongmiao);
sj2.setText(aa);
} else
JOptionPane.showMessageDialog(null, "播放文件格式的有错,无法播放 建议删除");
} else
JOptionPane.showMessageDialog(null, "此歌曲文件已经不存在,建议删除");
} else
JOptionPane.showMessageDialog(null, "请选择音乐文件");
}
});
loopSound.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (jl.getSelectedIndex() >= 0) {
String yy = (String) vector.get(jl.getSelectedIndex());
File ff = new File(yy);
if (ff.exists()) {
if (yy.matches("[\\S\\s]*.wav") || yy.matches("[\\S\\s]*.wav")) {
if (soumd1 != null) {
a = 0;
b = 0;
you = 0;
soumd1.stop();
}
soumd1.setMediaLocation("file:/" + yy);
fo = true;
soumd1.start();
geshi = true;
try {
Thread.sleep(500);
} catch (InterruptedException we) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
if (zongmiao > 10000) {
try {
Thread.sleep(500);
} catch (InterruptedException we) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
}
zongmiao = (int) soumd1.getDuration().getSeconds();
String aa = fen(zongmiao);
sj2.setText(aa);
} else
JOptionPane.showMessageDialog(null, "播放文件格式的有错,无法播放 建议删除");
} else
JOptionPane.showMessageDialog(null, "此歌曲文件已经不存在,建议删除");
} else
JOptionPane.showMessageDialog(null, "请选择音乐文件");
}
});
stopsound.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
a = 0;
b = 0;
you = 0;
mm = 0;
geshi = false;
fo = false;
sldDiameter.setMaximum(100);
sldDiameter.setValue(0);
sj1.setText(null);
sj2.setText(null);
if (jl.getSelectedIndex() >= 0)
soumd1.stop();
}
});
tjian.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
fileChooser.setCurrentDirectory(new File(".")); // 设置文件选择器当前目录
fileChooser.setFileFilter(new javax.swing.filechooser.FileFilter() {
public boolean accept(File file) { // 可接受的文件类型
String name = file.getName().toLowerCase();
return name.endsWith(".mp3") || file.isDirectory();
}
public String getDescription() { // 文件描述
return "音乐文件(*.mp3)";
}
});
if (fileChooser.showOpenDialog(MP311.this) == JFileChooser.APPROVE_OPTION) { // 弹出文件选择器,并判断是否点击了打开按钮
String fileName = fileChooser.getSelectedFile().getAbsolutePath(); // 得到选择文件或目录的绝对路径
vector.add(fileName);
StringBuffer buffer = daoxu(fileName);
mingcheng.add(buffer);
}
}
});
shanc.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
if (jl.getSelectedIndex() >= 0) {
mingcheng.removeElementAt(jl.getSelectedIndex());
vector.removeElementAt(jl.getSelectedIndex());
jl.setListData(mingcheng);
}
}
});
jl.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent event) {
if (event.getClickCount() == 2) {
if (jl.getSelectedIndex() >= 0) {
String yy = (String) vector.get(jl.getSelectedIndex());
File ff = new File(yy);
if (ff.exists()) {
if (yy.matches("[\\S\\s]*.wav") || yy.matches("[\\S\\s]*.wav")) {
if (soumd1 != null) {
a = 0;
b = 0;
you = 0;
soumd1.stop();
}
soumd1.setMediaLocation("file:/" + yy);
fo = true;
soumd1.start();
geshi = true;
try {
Thread.sleep(500);
} catch (InterruptedException e) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
if (zongmiao > 10000) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
}
zongmiao = (int) soumd1.getDuration().getSeconds();
}
String aa = fen(zongmiao);
sj2.setText(aa);
} else
JOptionPane.showMessageDialog(null, "播放文件格式的有错,无法播放 建议删除");
} else
JOptionPane.showMessageDialog(null, "此歌曲文件已经不存在,建议删除");
}
}
if (event.isMetaDown()) {
if (jl.getSelectedIndex() >= 0) {
int a = jl.getSelectedIndex();
xiugai x = new xiugai();
jt1.setText(mingcheng.get(jl.getSelectedIndex()) + "");
jt2.setText(vector.get(jl.getSelectedIndex()) + "");
}
}
}
});
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
String s = "c:\\music.txt";
mmm(vector, mingcheng, s);
System.exit(0);
}
});
setSize(300, 400);
setVisible(true);
}
public void run() {
while (true) {
Date now = new Date();
shijian.setText("当前时间: " + now.toString());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
}
if (geshi) {
you = (int) soumd1.getMediaTime().getSeconds();
mm = you % 60;
if (you != 0)
if (you % 60 == 0) {
b++;
}
sj1.setText(b + ":" + mm);
System.out.println(sj1.getText());
sldDiameter.setMaximum(zongmiao);
if (you != zongmiao)
sldDiameter.setValue(you);
else {
sldDiameter.setValue(0);
mm = 0;
b = 0;
}
}
}
}
public StringBuffer daoxu(String fileName) {
String mc = "";
for (int i = fileName.length(); i >= 1; i--) {
if (fileName.charAt(i - 1) == '\\')
break;
mc += fileName.charAt(i - 1);
}
StringBuffer buffer = new StringBuffer(mc);
StringBuffer mm = buffer.reverse();
return mm;
}
public void mmm(Vector vector, Vector mingcheng, String lujin) {
lujin a = new lujin(vector, mingcheng);
try {
ObjectOutputStream output = new ObjectOutputStream(new FileOutputStream(lujin));
output.writeObject(a);
output.flush();
output.close();
} catch (Exception e) {
}
}
public String fen(int yy) {
fenzhong = (int) yy / 60;
miaozhong = (int) yy % 60;
String sss = fenzhong + ":" + miaozhong;
return sss;
}
public static void main(String agrs[]) {
MP311 s = new MP311();
Thread t1 = new Thread(s);
t1.start();
s.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
class xiugai extends JFrame {
public xiugai() {
jl1 = new JLabel("文件名");
jt1 = new JTextField(20);
jl2 = new JLabel("文件路径");
jt2 = new JTextField(20);
xiugai = new JButton("修改");
Container c = getContentPane();
c.setLayout(new GridLayout(3, 1));
JPanel j1 = new JPanel();
JPanel j2 = new JPanel();
JPanel j3 = new JPanel();
j1.add(jl1);
j1.add(jt1);
j2.add(jl2);
j2.add(jt2);
j3.add(xiugai);
c.add(j1);
c.add(j2);
c.add(j3);
xiugai.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
mingcheng.setElementAt(jt1.getText(), jl.getSelectedIndex());
vector.setElementAt(jt2.getText(), jl.getSelectedIndex());
jl.setListData(mingcheng);
dispose();
}
});
setSize(300, 120);
setVisible(true);
}
}
}
class lujin implements Serializable {
Vector a = new Vector();
Vector b = new Vector();
public lujin(Vector vector, Vector mingcheng) {
a = vector;
b = mingcheng;
}
}