如何获得 JPanel 引入的边距

发布于 2024-12-24 18:37:16 字数 505 浏览 1 评论 0原文

我有一个 JPanel 面板,其中包含 JTree 。有时 JTree 的宽度或高度大于面板本身。

我想要做的是使用面板的高度和宽度重新计算树的高度和宽度。唯一的问题是我不知道如何获取 JPanel 引入的边距,以便精确计算 JTree 的新大小。

我想要的示例:

if (treeHeight >= panelSize.getHeight()) {
    treeHeight = panelSize.getHeight() - panelMargins; // panelMargins is what I don't know how to calculate
}

更新:

  1. 我的 JTree 已经 在 JScrollPane 中
  2. 我的 JScrollPane 在 Jpanel 内部

I have a JPanel panel which contains a JTree tree. Sometimes the JTree has width or height greater then the panel itself.

What I want to do is recalculate the height and width of tree using the height and width of panel. The only problem is that I don't know how to get the margins introduced by a JPanel in order to precisely calculate the new Size of the JTree.

Example of what i want:

if (treeHeight >= panelSize.getHeight()) {
    treeHeight = panelSize.getHeight() - panelMargins; // panelMargins is what I don't know how to calculate
}

UPDATE :

  1. My JTree is already in a JScrollPane
  2. My JScrollPane is inside the Jpanel

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

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

发布评论

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

评论(1

终陌 2024-12-31 18:37:16

你必须使用

1) 正确的 LayoutManager

2) 添加 EmptyBorder

那么你永远不需要它

you have to use

1) proper LayoutManager

2) add EmptyBorder

then you never need that

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文