This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
I have a JApplet with a JPanel with another JPanel � TreePanel � containing a JScrollPane with a JTree. When init() is run in MyApplet, _treePanel is initiated with a JTree, with test data hardcoded in TreePanel�s constructor. I want the tree to change every time a thread loops, by calling method _treePanel.updateResultTree(root) from the thread, with a new root. To test this, I have hardcoded a new tree content in the thread to pass to the TreePanel. In method updateResultTree(root), I remove the existing JTree from JScrollPane and add a new JTree to it, with the new root. Then I repaint the JScrollPane. When I run the applet, the initial tree is displayed, but it is not updated with the new JTree for the first thread loop as expected. How is the gui in a JApplet refreshed/updated?? Will SwingWoker update the gui automatically without forcing repaint()? Please help! Thanks in advance!
Joined: Dec 03, 2003
found the error: I need to use _treeScroll.getViewPort().add(_tree); and _treeScroll.getViewPort().remove(_tree);