При создании JTree он показывает пути для каждого узла, есть ли способ просто показать имена файлов / папок?
Мне удалось собрать функциональный JTree, который загружает файлы и папки из user.dir, но каждый узел назван с абсолютным путем, что несколько утомительно, если вы не представляете себе имена узлов, которые выходят далеко за границы. Поэтому мне интересно, есть ли простое решение для сокращения имен узлов, скажем, родительского каталога и имени файла / папки?
В настоящее время мои узлы выглядят так:
/Users/username/documents/workspace/project/test.txt
То, что я ищу, это больше строк:
/test.txt
Если это что-то, что даже новичок должен быть позорным из-за того, что он не понимает, я ожидаю некоторую порку пословиц. Но если это считается достойным вопросом, не стесняйтесь крутить лапшу. Я попытался посмотреть на внешний вид Java, но это оказалось глупым.
Я не уверен, нужно ли мне записывать свой код. Но если это пригодится, я использовал массив File и.list() для захвата файлов, а затем вставил их в JTree с помощью "DefaultMutableTreeNode" и "DefaultTreeModel".
1 ответ
Используйте соответствующий TreeCellRenderer
, См. File Browser GUI для отличного (IMO) примера.