【问题标题】:Gridbaglayout fixed position verticallyGridbaglayout 垂直固定位置
【发布时间】:2013-12-11 00:40:55
【问题描述】:

我在一个 JFrame 中有两个 JPanel,但是当一个 JPanel 的高度大于另一个 JPanel 时,它会自动垂直居中对齐。我正在使用 GridBagLayout。尽管我设置 weighty=0,但为什么会这样?无论 Panel2 更大或更小,我应该怎么做才能将 Panel1 对齐到顶部?谢谢。

【问题讨论】:

    标签: java swing gridbaglayout


    【解决方案1】:

    GridBagLayout 遵循组件的首选大小。

    如果您希望组件具有相同的高度,您可以使用GridBagConstraintsfill 属性并将其设置为GridBagConstraints.HORIZONTAL,这将告诉GridBagLayout 填充给定行内的所有组件使它们符合行的高度(应该是行中最高组件的高度)

    如果您只想对齐组件(到顶部),您应该将anchor 属性更改为GridBagConstraints.NORTH

    详情请见How to use GridBagLayout

    【讨论】:

    • 所以我的代码...(你可能需要设置两个组件的锚点位置)
    • 谢谢哥们。它的工作。我再次检查了代码。有一个愚蠢的错误。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2011-07-09
    • 1970-01-01
    • 2019-05-12
    • 1970-01-01
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 2011-08-02
    相关资源
    最近更新 更多