Hallo allemaal,
Ik heb een JTabbedPane met verschillende tabs. Elke tab bestaat uit een JComponent dat een JEditorPane is. Nu wil ik het zo krijgen dat telkens ik verwissel van tab het systeem dat component volledig gaat herschrijven (een update met volledige nieuwe inhoud dus). De inhoud is volledig nieuw maar moet getoond worden in de tab met het component dat op dat moment geselecteerd is. Probleem is dus het updaten van het geselecteerde component hoe dat moet.
De volgende code gebruik ik om acties op te roepen bij het verwisselen van tab:
De functie loadTab ziet er als volgt uit:
De componenten worden gemaakt in een aparte functie en eigenlijk moeten ze dus bij het verwisselen van tabs opnieuw worden aangemaakt door dezelfde methode. Deze methode haalt een xml file op, maar deze is inhoudelijk telkens anders, dus daarom moet de tab content worden bewerkt.
Ik heb al geprobeerd om een Refreshable interface te implementeren maar dat zoek ik eigenlijk niet en het werkt trouwens ook niet.
Het zou me enorm plezieren moesten jullie me op weg helpen want ik weet niet waar te beginnen.
Kris
Ik heb een JTabbedPane met verschillende tabs. Elke tab bestaat uit een JComponent dat een JEditorPane is. Nu wil ik het zo krijgen dat telkens ik verwissel van tab het systeem dat component volledig gaat herschrijven (een update met volledige nieuwe inhoud dus). De inhoud is volledig nieuw maar moet getoond worden in de tab met het component dat op dat moment geselecteerd is. Probleem is dus het updaten van het geselecteerde component hoe dat moet.
De volgende code gebruik ik om acties op te roepen bij het verwisselen van tab:
Java:
1
2
3
4
5
6
7
8
| tabbedPane.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent event) { // int n = tabbedPane.getSelectedIndex(); // tabbedPane.getSelectedComponent(); loadTab(n); } }); |
De functie loadTab ziet er als volgt uit:
Java:
1
2
3
| private void loadTab(int n) { // Hier komt dan de implementatie om dat specifieke tabje te vernieuwen } |
De componenten worden gemaakt in een aparte functie en eigenlijk moeten ze dus bij het verwisselen van tabs opnieuw worden aangemaakt door dezelfde methode. Deze methode haalt een xml file op, maar deze is inhoudelijk telkens anders, dus daarom moet de tab content worden bewerkt.
Ik heb al geprobeerd om een Refreshable interface te implementeren maar dat zoek ik eigenlijk niet en het werkt trouwens ook niet.
Het zou me enorm plezieren moesten jullie me op weg helpen want ik weet niet waar te beginnen.
Kris
[ Voor 0% gewijzigd door Verwijderd op 25-02-2008 22:50 . Reden: topic titel vergeten! ]