表中的Java表可自动调整大小

问题描述 投票:0回答:2

我想做一个可以容纳小表格并支持调整大小的表格。

enter image description here

我的解决方案使用包含表的 JScrollpane,而 gridbaglayout 包含 JPanel 行,该行 JPanel 包含 JLabels 和 ETable(流程布局)。

如何解决调整大小问题?当我调整窗口大小时,列会自动与窗口对齐。

enter image description here

大表中的列未正确对齐。

java swing jtable jpanel jscrollpane
2个回答
1
投票
  1. 我看到 J(X)TreeTable 或具有自定义外观和感觉的轮廓(渲染器谈论 Nimbus L&F,因为没有正确使用布尔值的背景)

  2. 将 JComponent(从顶部)放在 JPanel 顶部,然后使用 GridBagLayout

  3. 将 JScrollPane 与 J(X)TreeTable 或 Outline 一起放置到中心区域

  4. 请问使用的是哪种类型的TreeTable??? (用于计算列的 PreferredSize)

编辑

在这种情况下,请将桌子替换为黑匣子。这不相关。

JFrame
已经在 API 中实现了
BorderLayout
,那么

  • JComponent

    中的所有

    TOP of the JFrame
    放入单独的
    JPanel
    ,在那里您可以使用
    GridBagLayout
    ,将这个
    JPanel
    放入
    NORTH area
    ,例如
    JFrame.add(JPanel, BorderLayout.NORHT)
    
    

  • black box

    置于中心区域,例如

    JFrame.add(black box, BorderLayout.CENTER)
    
    


0
投票

Jtable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

使用此
JTable

将在需要时显示水平和垂直滚动条。

    

© www.soinside.com 2019 - 2024. All rights reserved.