【问题标题】:JScrollPane in JPanel added to JTabbedPaneJPanel 中的 JScrollPane 添加到 JTabbedPane
【发布时间】:2018-08-30 17:24:38
【问题描述】:

我目前正在尝试使用 Swift 中的 GridBagLayout 构建 GUI。

在尝试为我正在处理的项目制作 GUI 时遇到了问题:

在创建事物列表时,面板超出了我的屏幕高度,因此我将框架的首选大小设置为 900 像素。

但是,列表的高度超过了 900 像素。所以我尝试将 JScrollPane 添加到包含列表的面板中。就是没有。

我的 Frame 架构是这样的: 框架 f -> JTabbedPane Wrapper -> JPanel p

我将 ScrollPane 应用到这些对象中的任何一个,都没有工作。有什么建议吗?

【问题讨论】:

  • “所以我尝试将 JScrollPane 添加到包含列表的面板中。” - 您必须将面板设置为 JScrollPane 的内容,而不是添加它面板内部。其中一种方法是直接在构造函数中:new JScrollPane(panel);。如果我理解错了并且这不是问题,请提供minimal reproducible example
  • 您应该使用可以计算所需面板宽度的适当layout manager,或者您应该为面板设置首选尺寸。类似panel.setPreferredSize(new Dimension(800, 2000));
  • @lukas-rotter,将面板添加到 ScrollPane 正是我所做的。新的 JScrollPane(包装器);或新的 JScrollPane(f);

标签: java swing scrollbar gridbaglayout


【解决方案1】:

所以,我只想告诉你,我是 Java 新手,刚刚注意到我的错误。

在创建 JPanel 的函数中,我仍然返回 JPanel 而不是 ScrollPane。

Anways,感谢大家的帮助。

【讨论】:

    猜你喜欢
    • 2020-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多