gpt4 book ai didi

java - 如何使用 jgoodies 表单最大化组件高度

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:20 26 4
gpt4 key购买 nike

菜鸟问题:我有以下表单布局(请原谅 JRuby 语法)。我希望所有三个按钮的高度都被拉伸(stretch)以填充可用空间。但只有按钮 3 这样做。

require 'java'
require './lib/jgoodies-common-1.2.1.jar'
require './lib/jgoodies-forms-1.4.2.jar'

java_import javax.swing.JButton
java_import javax.swing.JFrame

java_import com.jgoodies.forms.layout.CellConstraints
java_import com.jgoodies.forms.layout.FormLayout

class Foo < JFrame
def initialize
super
cc = CellConstraints.new

layout = FormLayout.new(
"10dlu, pref:grow, 10dlu, pref:grow, 10dlu",
"10dlu, pref:grow, 10dlu, pref:grow, 10dlu"
)
layout.setRowGroups([[2, 4]])
layout.setColumnGroups([[2, 4]])

self.setLayout(layout)

self.add(JButton.new("button 1"), cc.xy(2, 2))
self.add(JButton.new("button 2"), cc.xy(2, 4))
self.add(JButton.new("button 3"), cc.xywh(4, 2, 1, 3))

self.pack
self.setVisible(true)
self.toFront
end
end

Foo.new

感谢提示和指示。

--本

最佳答案

告诉 rowSpec 填充高度:

    FormLayout layout = new FormLayout(
"10dlu, pref:grow, 10dlu, pref:grow, 10dlu",
"10dlu, fill:pref:grow, 10dlu, fill:pref:grow, 10dlu"
);

从技术上讲,这明确地否决了行的“对齐方式”,默认情况下是 CENTER。对于列,默认对齐方式为 FILL(因此,如果您希望水平拉伸(stretch),则无需否决)。第三个按钮出现垂直魔法拉伸(stretch)的原因是它跨越了两个内容行:没有太多其他内容可以对齐然后填充(据我记得,没有检查细节)

关于java - 如何使用 jgoodies 表单最大化组件高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7831354/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com