0
這是我的應用程序。更新渲染樹細胞
我想要做的就是讓這個當用戶的詳細信息進行更新,所以確實是在JTree的節點。這可能嗎;即使JTree及其渲染的單元格已經被創建?
我需要一個更新渲染單元的示例,即使它已經被創建。
這裏是我查看代碼:
void createTree() {
rootNode = new DefaultMutableTreeNode("users");
for (User user : listOfUsers) {
String id = user.getId();
File file = new File(id);
DefaultMutableTreeNode node = new DefaultMutableTreeNode(file);
rootNode.add(node);
}
treeModel = new DefaultTreeModel(rootNode);
tree = new JTree(rootNode);
}
void addTreeModelListener(TreeModelListener a) {
treeModel.addTreeModelListener(a);
}
void repaintTree() {
treeModel.reload();
tree.revalidate();
tree.repaint();
}
這裏是我的控制器代碼:
的想法是一直所做的更改的對象後,我打電話repaintTree()方法。現在仔細查看代碼後,我認爲問題在於我改變了對象細節而不是節點細節,但這只是一種預感。
請儘快回覆,非常感謝。
感謝您的及時回覆和示例。我一直在提及它們,而且目前我仍然有問題需要解決。它的功能雖然是當我拯救時,JTree不重視自己;也許是因爲JTree正在重新驗證,除非它由於某種原因不更新呈現的單元格。 – Kurtiss
您是否調用了重新驗證和重繪? –
是的,我做了,我做了一個樹模型,並嘗試reload()以及。 – Kurtiss