Я создаю средство просмотра каталогов с помощью JTree в java .swing. Проблема с GUI заключается в том, что узлы частично видны и видны только после того, как я расширяю дочерние узлы
Перед расширением
После Расширения
Здесь приведен код выше
public class ProjectStructure extends JPanel{
private JTree directory;
public ProjectStructure() {
setLayout(new BoxLayout(this,BoxLayout.Y_AXIS));
Dimension size = getPreferredSize();
size.width = 250;
setPreferredSize(size);
setBorder(BorderFactory.createTitledBorder("Explorer"));
}
void displayFilesInDirectory(File file){
DefaultMutableTreeNode root = new DefaultMutableTreeNode(file.getName());
generateTreeView(file, root);
directory = new JTree(root);
directory.setVisible(true);
add(directory);
}
private void generateTreeView(File rootFile, DefaultMutableTreeNode parent) {
File[] files = rootFile.listFiles();
if (files != null) {
for (int i = 0; i < files.length; i++) {
DefaultMutableTreeNode node = new DefaultMutableTreeNode(files[i].getName());
parent.add(node);
if (files[i].isDirectory()) {
generateTreeView(files[i], node);
}
}
}
}
}
Также можно сделать JPanel можно изменить размер с помощью функции перетаскивания?