Java Swing ComboBox список файлов с Unix-машины - PullRequest
0 голосов
/ 09 апреля 2011

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

У меня есть список файлов .ksh в одном из моих каталогов на компьютере UNIX, которые я хотел бы прочитать в ComboBox Swing GUI.

Элементы выпадающего списка будут заполняться из списка файлов в каталоге на компьютере UNIX, и когда я щелкаю файл из списка, он выполняет сценарий в оболочке UNIX. Я не совсем уверен, как начать.

Ответы [ 2 ]

1 голос
/ 09 апреля 2011

Таким образом, вы можете получить список файлов (в виде строкового массива) с расширением ".ksh":

File dir = new File(pathToDir);
String[] files;
FilenameFilter filter = new FilenameFilter() {
    public boolean accept(File dir, String name) {
        return !name.endWith(".ksh");
    }
};
files = dir.list(filter);

Затем выполните итерацию массива и добавьте в него имена.

Чтобы выполнить команду в оболочке, см. один из этих много ответов

0 голосов
/ 09 апреля 2011

Попробуйте что-то вроде этого:

private JComboBox myComboBox = new JComboBox();
private void showFiles(){
    String myPath = "writeYourPathHere..."
    File folder = new File(myPath);
    File[] listOfFiles = folder.listFiles();
    for (int i = 0; i < listOfFiles.length; i++) {
        myComboBox.addItem(listOfFiles[i].getName());
    }
}

После выбора файла в выпадающем списке

    private void selectedFile(){
    myComboBox.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
        //do something
        }
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...