RRe-JeePMedlem sedan sep. 200642 inlägg Frågan#1 Hej!
Jag har gjort ett eget träd över mappar på en hårddisk genom att extenda JTree.
Jag har gjort en testklass för att lägga till träd i en JFrame.
Problemet är att om jag lägger till mer än ett träd så överskrids dom jag har lagt till innan.
Testklassen:
import javax.swing.*;
import java.io.*;
import java.awt.Dimension;
public class test extends JFrame
{
public static void main(String[] args)
{
new test();
}
public test()
{
FolderTree tree = new FolderTree("/");
FolderTree tree2 = new FolderTree("/home/");
JScrollPane scrollpane = new JScrollPane();
add(scrollpane);
scrollpane.setPreferredSize(new Dimension(250, 450));
scrollpane.getViewport().add(tree);
scrollpane.getViewport().add(tree2);
add(scrollpane);
setVisible(true);
setSize(300, 500);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
LLimeMedlem sedan sep. 2001961 inlägg Men snälla... läs API:et...
"A container class which implements automatic horizontal and/or vertical scrolling for a single child component." (http://java.sun.com/javase/6/docs/api/java/awt/ScrollPane.html)
Men det går bra att lägga träden på en panel och lägga till panelen...
RRe-JeePMedlem sedan sep. 200642 inlägg
Lime skrev:
Men snälla... läs API:et...
"A container class which implements automatic horizontal and/or vertical scrolling for a single child component." (http://java.sun.com/javase/6/docs/api/java/awt/ScrollPane.html)
Förstår inte hur jag kunde missa det... :q
Edit *
Eller jo... Det gör jag!
Läste här: http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JScrollPane.html
Jag löste det med JPanel! Tack för hjälpen!
import javax.swing.*;
import java.io.*;
import java.awt.*;
public class test extends JFrame
{
public static void main(String[] args)
{
new test();
}
public test()
{
FolderTree tree = new FolderTree("/");
FolderTree tree2 = new FolderTree("/home/");
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(2, 1));
panel.add(tree);
panel.add(tree2);
JScrollPane scrollpane = new JScrollPane();
add(scrollpane);
scrollpane.setPreferredSize(new Dimension(250, 450));
scrollpane.getViewport().add(panel);
add(scrollpane);
setVisible(true);
setSize(300, 500);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}