/
Forside
/
Teknologi
/
Udvikling
/
Java
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
Java
#
Navn
Point
1
molokyle
3688
2
Klaudi
855
3
strarup
740
4
Forvirret
660
5
gøgeungen
500
6
Teil
373
7
Stouenberg
360
8
vnc
360
9
pmbruun
341
10
mccracken
320
JTree problemer
Fra :
PennyWise_22
Dato :
14-02-02 16:59
Jeg skal lave et træ, som har en parent knude og en masse noder som ikke må
få nogle children. Jeg har lavet en DefaultTreeModel.
For hver gang en button trykkes - enten slet eller tilføj skal der således
slettes den selekterede node og ligeledes skal tilføj tilføje en node efter
den sidste node i træet.
Hvordan vil koden se ud? Fordi jeg kan kun lave et JTree som tilføjer
children til det selekterede node, hvilket den ikke skal.
Her er lidt af min kode:
private TreeNode root;
private JTree tree;
private DefaultTreeModel model;
private DefaultMutableTreeNode rod;
private DefaultMutableTreeNode newNode;
root = makeSampleTree();
model = new DefaultTreeModel(root);
tree = new JTree(model);
public TreeNode makeSampleTree()
{
rod = new DefaultMutableTreeNode("Konti");
DefaultMutableTreeNode kt = new DefaultMutableTreeNode("Konto 1");
rod.add(kt);
return rod;
}
og min almindelige actionlistener:
private class MuseLytter implements ActionListener{
public void actionPerformed(ActionEvent e)
{
DefaultMutableTreeNode selectedNode
= (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
if(selectedNode == null) return;
Object aktiveretKnap = e.getSource();
if(aktiveretKnap.equals(jButton2)){ //sletter selekteret konto
if(selectedNode.getParent()!=null){
model.removeNodeFromParent(selectedNode);
return;
}
}
else if(aktiveretKnap.equals(jButton3))
{
String ktn = jTextField3.getText();
System.out.print(ktn);
newNode = new DefaultMutableTreeNode(ktn);
model.insertNodeInto(newNode, root, selectedNode.getChildCount());
}
else if(aktiveretKnap.equals(jButton1)){
//this.sendToBack();
}
TreeNode[] nodes = model.getPathToRoot(newNode);
TreePath path = new TreePath(nodes);
}
}
Søg
Alle emner
Teknologi
Udvikling
Java
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177558
Tips :
31968
Nyheder :
719565
Indlæg :
6408926
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.