MATLAB: доступ к внутренним Java-методам uigetdir

При использовании стандартного диалогового окна dir из MATLAB uigetdir двойной щелчок по каталогу приводит к его открытию и отображению его содержимого. Чтобы фактически выбрать его, вы должны нажать на кнопку "выбрать каталог".

То, что я хотел бы, это способ добавить конкретные правила, что делать при двойном щелчке по каталогу: в основном, я хотел бы изменить / переопределить внутренний "метод / обратный вызов", связанный с этим действием.

Проблема в том, что указанное диалоговое окно НЕ является вашей обычной фигурой Matlab - я бы знал, как это легко сделать (получить дескриптор, посмотреть свойства и отредактировать / изменить соответствующий обратный вызов). Это похоже на необработанный объект Java, и я не нахожу способа получить доступ к этой информации из Matlab.

Спасибо за вашу помощь.

1 ответ

Решение

Вы можете попробовать это вместо uigetdir:

fc = javax.swing.JFileChooser('/initial/path')
% then customise the dialog using Java methods, as you please!
fc.setFileSelectionMode(javax.swing.JFileChooser.FILES_AND_DIRECTORIES)
chosenfile = fc.showOpenDialog([])

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

Другие вопросы по тегам