如何在jtable中显示音乐信息,并使jtable可点击以播放歌曲


FileNameExtensionFilter ff=new FileNameExtensionFilter("mp3 files",
"mp3", "mpeg3");
 JFileChooser fileChooser = new JFileChooser();
  fileChooser.addChoosableFileFilter(ff);
 fileChooser.setMultiSelectionEnabled(true);
 int returnVal = fileChooser.showOpenDialog(fileChooser);
 if (returnVal==JFileChooser.APPROVE_OPTION) {
    File file[] = fileChooser.getSelectedFiles(); 
    DefaultTableModel dtm = (DefaultTableModel)
    home_player.jTable1.getModel();

    for (int i = 0; i < file.length; i++) {
        Vector v = new Vector();
        int num = dtm.getRowCount()+1; 
        String name = file[i].getName();
        String album = file[i].getParentFile().getParentFile().getName();
        String  art=   file[i].getParentFile().getName();
        v.add(num);
        v.add(name);
        v.add(art);
        v.add(album);
        dtm.addRow(v);
        playerp p = new playerp();
        p.stop();
       }      
     return Arrays.asList(file);
     }
 return null;
}

添加MouseListenerJTable。如果您不知道如何做到这一点,请阅读Swing教程中关于如何编写mousellistener的部分

那么处理mousePressed()事件的代码可能是这样的:
if (e.getClickCount() == 2)
{
    JTable table = (JTable)e.getSource();
    int row = table.rowAtPoint(e.getPoint());
    int viewColumn = convertColumnIndexToView(1)
    String name = table.getValueAt(row, viewColumn);
    // invoke your music player using the name?
}

最新更新