欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java JScrollPane 滚动条不好使问题,以及JScrollPane中放入JLayeredPane问题

程序员文章站 2022-05-30 11:53:38
...

项目需要,写一个显示网络拓扑结构的插件(见我之前的博客),根据客户需要,要在拓扑展示面板添加滚动条,研究了一好一会……

 

我是将JLayeredPane放入JScrollPane中,开始怎么都不能显示滚动条,JScrollPane的size设小了是显示出来了,但是即使JLayeredPane中的内容超过了JScrollPane滚动条也不起作用,后来网上找到一个办法:

 

关键几句:

 JScrollPane pane = new JScrollPane();
 pane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
 pane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
 pane.setSize(300, 200);  //关键!这里要用setSize设定固定大小!!!

 

 JLayeredPane layerPane = new JLayeredPane();

 layerPane.setPreferredSize(new Dimension(1000, 700));

//关键!可以设定大些或设成和JScrollPane同样大小,这样如果内部空间位置超出设置的大小就会根据位置显示滚动条,  注意不能用setSize(否则滚动条不显示)!

 

 

 pane.setViewportView( layerPane );