项目需要,写一个显示网络拓扑结构的插件(见我之前的博客),根据客户需要,要在拓扑展示面板添加滚动条,研究了一好一会……
我是将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 );
分享到:
相关推荐
10. JScrollPane:滚动条组件,用于包含那些可能超出视图范围的组件。 11. JOptionPane:用于创建弹出对话框,如警告、确认、输入等。 Swing还支持事件处理,例如ActionListener接口用于处理按钮点击等动作事件,...
2. 滚动条面板(JScrollPane):当一个组件的内容超过了可视区域时,JScrollPane可以提供滚动条,使得用户能查看超出视区的部分。它可以包裹任何可滚动的组件,如JTable、JList或JTextArea。 3. 分隔条面板...
- `JScrollPane`:提供滚动条,用于容纳不能完全显示的组件。 - `JSplitPane`:允许用户动态调整两个组件之间的空间分配。 - `JLayeredPane`:支持多层组件,允许控制组件的堆叠顺序。 创建顶层容器的典型步骤...
- `JScrollPane`:用于添加滚动条以查看超出容器边界的内容。`JScrollPane()`和`JScrollPane(Component view)`是其构造方法。 - `JSplitPane`:允许用户调整两个区域的大小。`JSplitPane()`和`JSplitPane(int new...
此外,可能还会用到JPanel来组织这些组件,JScrollPane以处理滚动条,如果需要自定义组件样式,还可以使用JRootPane和JLayeredPane。 设计登录界面时,布局管理器(Layout Manager)起着至关重要的作用。Swing提供...
使用Window Builder,开发者可以直观地拖放组件,设置属性,以及管理布局,从而减少编写大量界面代码的工作量。本文将详细解析Window Builder中的一些核心概念和组件的用法。 首先,Window Builder中的选择功能...
它们有自己的布局管理器,并可以添加额外的功能,比如滚动条或分层管理。 元素组件是构成GUI的基本单元,包括按钮(JButton)、文本框(JTextField)、标签(JLabel)等。这些组件可以直接添加到容器中,提供用户...
* `JScrollPane`:一个滚动面板容器,提供了滚动条和面板功能。 * `JSplitPane`:一个分隔面板容器,提供了分隔和面板功能。 * `JToolBar`:一个工具栏容器,提供了基本的工具栏功能。 特殊容器 特殊容器是 Swing ...
15. JScrollBar, JSlider: 分别提供垂直和水平滚动条以及滑块组件,用于调整视图或数值。 16. JProgressBar: 显示任务的进度,例如文件传输或计算过程。 17. JFormattedTextField, JPasswordField: 前者允许格式化...