簡體   English   中英

如何在jtable中顯示音樂信息並使jtable可單擊以播放歌曲?

[英]How to display music information in a jtable and make the jtable clickable to play the song?

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;

}

您將一個MouseListener添加到JTable 如果您不知道該怎么做,請閱讀Swing教程中有關如何編寫MouseListener的部分。

然后,用於處理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?
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM