首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JScrollPane视图布局与SpringLayout

JScrollPane视图布局与SpringLayout
EN

Stack Overflow用户
提问于 2012-11-24 18:37:30
回答 1查看 2.3K关注 0票数 3

我有一个JScrollPane,它有一个使用SpringLayout的视图组件。

代码语言:javascript
运行
复制
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似乎不起作用,任何帮助都是非常感谢的!

EN

回答 1

Stack Overflow用户

发布于 2012-11-24 18:53:24

引用如何使用滚动窗格

除非显式设置滚动窗格的首选大小,否则滚动窗格将根据其九个组件的首选大小(视图端口,以及(如果存在)两个滚动条、行和列标题以及四个角)计算它。最大的因素,也是大多数程序员关心的因素,是用来显示客户端的视口的大小。

  • 因此,您必须在setPreferedSize(Dimension d)实例上调用JScrollPane 最后的JPanel面板=新的JPanel(新的SpringLayout());//添加到面板中的东西在这里最终JScrollPane scrollPane =新的JScrollPane(面板,JScrollPane.VERTICAL_SCROLLBAR_NEVER,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);scrollPane.setPreferredSize(新的维度(300,300));add(scrollPane);
  • 或重写用作视图端口的JPanel/组件的JPanel final JPanel面板=新的JPanel(新的SpringLayout()) {@覆盖公共维度getPreferredSize() {返回新的维度(300,300);};};//向面板中添加内容,这里最后的JScrollPane scrollPane =新的JScrollPane(面板,JScrollPane.VERTICAL_SCROLLBAR_NEVER,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);添加(ScrollPane);

其他说明:

  • 不要不必要地扩展JFrame类。
  • 在将调用转发到add(..)时,只需在JFrame实例上调用contentPane即可。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13544311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档