JAVA 我在JPanel上放了一个JScrollPane,JScrollPane中放了JTree,但是运行出来JTree无法显示 5
我后来把JTree加到一个JPanel上,然后把这个JPanel加到JScrollPane上,结果一开始不显示,要用鼠标滚轮滚动一下才会显示出来。。。求大神教。。。这是代...
我后来把JTree加到一个JPanel上,然后把这个JPanel加到JScrollPane上,结果一开始不显示,要用鼠标滚轮滚动一下才会显示出来。。。求大神教。。。
这是代码片段,CateTree是树,这棵树我测试过内容没问题,Scrollpanel是加上去的JPanel,panel是最外面的JPanel,frame什么的都没问题,求解啊、、、 展开
这是代码片段,CateTree是树,这棵树我测试过内容没问题,Scrollpanel是加上去的JPanel,panel是最外面的JPanel,frame什么的都没问题,求解啊、、、 展开
1个回答
展开全部
嵌套层次有点多,这样就行了:
JFrame jf = new JFrame("测试树");
jf.getContentPane().add(jsp, BorderLayout.CENTER);
JTree tree= new JTree();// 构建树
jf.setSize(new JScrollPane(tree), 600);
// jf.setDefaultCloseOperation(3);
jf.setVisible(true);
追问
额。。因为这是个大作业。。所以外面这个panel设计的时候不能省。。。所以不能直接放在frame上。。。我之前本来用的JTable,直接JScrollPane tablePanel = new JScrollPane(那个JTable),然后Panel。add(JScrollPane)这样可以。。。结果JTable换成JTree就不行。。。
追答
JFrame jf = new JFrame("测试树");
JPanel myPanel=new JPanel(new BorderLayout());// 多嵌套一个面板
myPanel.add(new JScrollPane(tree), BorderLayout.CENTER);
jf.getContentPane().add(myPanel, BorderLayout.CENTER);
JTree tree= new JTree();// 构建树
jf.setSize(800, 600);
// jf.setDefaultCloseOperation(3);
jf.setVisible(true);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询