Java-JScrollPane视图布局与SpringLayout
我有一个Java-JScrollPane视图布局与SpringLayout,java,swing,jscrollpane,springlayout,Java,Swing,Jscrollpane,Springlayout,我有一个JScrollPane,它有一个使用SpringLayout的视图组件 final JPanel panel = new JPanel(new SpringLayout()); // add stuff to panel here final JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_NEVER, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAY
JScrollPane
,它有一个使用SpringLayout
的视图组件
final JPanel panel = new JPanel(new SpringLayout());
// add stuff to panel here
final JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_NEVER, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
getContentPane().add(scrollPane);
JScrollPane
似乎不起作用,如有任何帮助,将不胜感激 引用
除非明确设置滚动窗格的首选大小,否则滚动窗格将根据其九个组件(视口,以及两个滚动条(如果存在)、行标题和列标题以及四个角)的首选大小进行计算。最大的因素,也是大多数程序员关心的,是用于显示客户端的视口的大小
- 因此,您必须在
实例上调用JScrollPane
setPreferedSize(维度d)
final JPanel panel = new JPanel(new SpringLayout()); // add stuff to panel here final JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_NEVER, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); scrollPane.setPreferredSize(new Dimension(300, 300)); add(scrollPane);
- 或者重写用作查看端口的
/组件的JPanel
getPreferredSize()
- 不要不必要地扩展
类JFrame
- 只需在
实例上调用JFrame
,就可以将调用转发到contentPaneadd(…)
JScrollPane似乎不起作用,如有任何帮助,将不胜感激代码>确保它可以工作,但取决于,发布一个SSCCE,仅演示JFrame、JScrollPane和JPanel(new SpringLayout()),hmmm empty JPanel从不返回任何大小,返回维度(0,0),适用于所有LayourManager
final JPanel panel = new JPanel(new SpringLayout()) {
@Override
public Dimension getPreferredSize() {
return new Dimension(300, 300);
}
};
// add stuff to panel here
final JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_NEVER, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
add(scrollPane);