Java:jscrollpane禁用水平滚动

发布于 2024-11-16 03:37:16 字数 331 浏览 1 评论 0原文

我想在 jscrollpane 上添加 Jpanel;我也只想垂直滚动。我想设置 jPanel“flowLaout”的布局,并通过 jpanel.add(component) 方法将多个组件添加到我的代码中的 jPanel 中。结果是所有组件都放置在超出 jpanel 宽度的一行中并且未显示。我已经使用了这个技巧,但都失败了:

jScrollPane1.setHorizontalScrollBar(null);
jScrollPane1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);

I want to add a Jpanel on a jscrollpane; also I want to have only vertical scrolling. I want to set layout of my jPanel "flowLaout" and add several components to my jPanel in my code by jpanel.add(component) method. The result is that all components are placed in just one row that excide width of jpanel and are not shown. I have used this tricks and both failed:

jScrollPane1.setHorizontalScrollBar(null);
jScrollPane1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

懒猫 2024-11-23 03:37:16

换行布局应该适合您。

Wrap Layout should work for you.

半枫 2024-11-23 03:37:16

我不确定您当前项目的详细信息,但我会推荐 MigLayout。它从来没有给我带来过错。

我目前正在编写一个触摸屏界面,其中嵌套的 MigLayout 面板深度可达 4 或 5 层,并且没有遇到任何问题。

I am unsure of the particulars for your current project, but i would recommend MigLayout. It has never served me wrong.

I am currently writing a touchscreen interface with nested MigLayout panels up to 4 or five layers deep, and have not had a single problem.

jJeQQOZ5 2024-11-23 03:37:16

请使用以下策略打开垂直滚动并关闭水平滚动(适用于 Java SE 7):

Panel graphicPanel = new Panel();
JScrollPane scrollbar = new JScrollPane(graphicPanel);
scrollbar.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
scrollbar.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scrollbar.setPreferredSize(new Dimension(1300, 600));
scrollbar.setVisible(true);
add(scrollbar, BorderLayout.CENTER);

Please use the below policy to turn on vertical scrolling and turn off horizontal scrolling(Works with Java SE 7):

Panel graphicPanel = new Panel();
JScrollPane scrollbar = new JScrollPane(graphicPanel);
scrollbar.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
scrollbar.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scrollbar.setPreferredSize(new Dimension(1300, 600));
scrollbar.setVisible(true);
add(scrollbar, BorderLayout.CENTER);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文