Как изменить средство выбора файлов, чтобы выбрать файл и отобразить его в списке

Я пытаюсь создать графический интерфейс плейлиста. Этот код показывает JFrame с панелью меню и средством выбора файлов, которое появляется автоматически при запуске. Что мне нужно добавить, чтобы пользователь нажимал кнопку, чтобы открыть средство выбора файлов, и как я могу отобразить музыкальный файл после того, как они его выбрали. ? Как будто он должен отображаться как список воспроизведения, чтобы они могли выбрать удаление, копирование и т. д. Спасибо за вашу помощь!

public class PlaylistView extends JFrame{    
    public static void main(String[] args){
        JFrame f = new JFrame("Playlist");
        f.setVisible(true);
        f.setSize(800,600);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setLocationRelativeTo(null);

        //The creation of a menubar
        JMenuBar mb = new JMenuBar();
        //sets menu bar onto the frame
        f.setJMenuBar(mb);

        //New menu items
        JMenu file = new JMenu("File");
        JMenu edit = new JMenu("Edit");
        JMenu exit = new JMenu("Exit");
        mb.add(file);
        mb.add(edit);
        mb.add(exit);


        JMenuItem addsong = new JMenuItem("Add Song");
        JMenuItem deletesong = new JMenuItem("Delete Song");
        JMenuItem copysong = new JMenuItem("Copy Song");
        file.add(addsong);
        file.add(deletesong);
        file.add(copysong);  

        JMenuItem addplaylist = new JMenuItem("Add Playlist");
        edit.add(addplaylist);
        JMenuItem deleteplaylist = new JMenuItem("Delete Playlist");
        edit.add(deleteplaylist);
        JMenuItem saveplaylist = new JMenuItem("Save Playlist");
        edit.add(saveplaylist);
        JMenuItem copyplaylist = new JMenuItem("Copy Playlist");
        edit.add(copyplaylist);

        //Button actually open to the file chooser
        JButton open = new JButton("Add Song");        
        //Filechooser to add a song in
        JFileChooser fc = new JFileChooser();
        fc.setCurrentDirectory(new java.io.File("."));
        fc.setDialogTitle("Add Song");
        fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
        if (fc.showOpenDialog(open) == JFileChooser.OPEN_DIALOG){

        }
        System.out.println("File Selected:" + fc.getSelectedFile().getAbsoluteFile());
    }
}

person LizzyPooh    schedule 12.12.2014    source источник
comment
См. Как использовать кнопки и Как написать прослушиватель действий в учебниках по Java.   -  person VGR    schedule 13.12.2014


Ответы (1)


Чтобы отобразить файлы в списке, вы можете сохранить их в JList.

DefaultListModel mylistmodel = new DefaultListModel();
JList songs= new JList(mylistmodel );

Everytime you select a file, you can call add the item to the list by,

mylistmodel.addElement(songtoAdd); // songtoadd is an object

mylistmodel.insertElementAt(songtoAdd, 0); // to insert songs at specific positions.

mylistmodel.remove(IndexofSong);

Вы можете использовать определенные методы для вышеуказанных действий, а затем вызывать соответствующий метод для выполнения каждого действия.

person vembutech    schedule 12.12.2014