java - 如何向 JPanel 添加空间,以便 JScrollPane 不会位于我的组件之上?

标签 java swing jpanel jscrollpane gui-design

我有一个 JScrollPane,当我加载应用程序时,该栏位于我的一个按钮的顶部。我想做的是在按钮一侧添加一些空间,以便滚动条绘制在空间上而不是我的按钮上。

我尝试过的示例代码:

JPanel eButton = new JPanel(new BorderLayout());
JPanel spaceFiller = new JPanel();
spaceFiller.setSize(30, 10);
eButton.add(editButton, BorderLayout.EAST);
eButton.add(spaceFiller, BorderLayout.WEST);

这段代码的问题是它仍然覆盖我的按钮并且没有添加空间。确保 JScrollPane 不会与 JFrame 中的组件重叠的最佳方法是什么?

谢谢

最佳答案

为了确保 JPanel 的大小得到考虑,您应该使用 setPreferredSize() 而不是 setSize()。

关于java - 如何向 JPanel 添加空间,以便 JScrollPane 不会位于我的组件之上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6059155/

相关文章:

java - JUnit AssertionFailedError : Text in the file differs in java

java - 扩展 JPanel 在添加到另一个 JPanel 时显示很小

java - JPanel 在绘制图像时显示奇怪的错误

java - 合并两个具有不同 Employee 属性的数组列表,以创建一个结合两个数组列表属性的新数组列表

java - 如何使用 javassist 检查运行时注释

java - java中的事件处理程序...程序没​​有错误,但在事件操作未显示后

java - JFrame/面板未显示

java - 项目未出现在 Java 的新框架中

Java Swing JPanel FlowLayout 高度问题

java - Hazelcast 中的分布式读写锁