是否可以在
GridBagLayout
中为整行/列设置边距/填充?然而,我在约束对象上使用了插图,使用这种方法我需要在每个组件上设置从底部开始的填充。是否可以填充
JFrame
中的所有内容?因为现在每个组件都与框架对齐。
constraints.weightx = 2;
constraints.weighty = 1;
constraints.fill = GridBagConstraints.BOTH;
addComponent(this, layout, constraints, questionPanel = new QuestionPanel(), 0, 0, 1, 1);
constraints.weightx = 1;
constraints.weighty = 1;
constraints.fill = GridBagConstraints.BOTH;
addComponent(this, layout, constraints, categoryPanel = new CategoryPanel(), 0, 1, 1, 1);
constraints.weightx = 1;
constraints.weighty = 0;
constraints.fill = GridBagConstraints.HORIZONTAL;
addComponent(this, layout, constraints, answerPanel = new AnswerPanel(), 1, 0, 2, 1);
constraints.weightx = 1;
constraints.weighty = 2;
constraints.fill = GridBagConstraints.BOTH;
addComponent(this, layout, constraints, tabPane = new JTabbedPane(), 2, 0, 2, 1);
constraints.weightx = 1;
constraints.weighty = 0;
constraints.fill = GridBagConstraints.NONE;
constraints.anchor = GridBagConstraints.SOUTHEAST;
addComponent(this, layout, constraints, buttonPanel = new ButtonPanel(), 3, 1, 1, 1);
我正在使用私有(private)方法 addComponent:
private void addComponent(Container context, GridBagLayout _layout, GridBagConstraints _constraints, Component component, int row, int column, int width, int height) {
_constraints.gridx = column;
_constraints.gridy = row;
_constraints.gridwidth = width;
_constraints.gridheight = height;
_layout.setConstraints(component, _constraints);
context.add(component);
}
如何在单元格之间添加一些“空气(填充/边距)”?
最佳答案
使用 GridBagConstraints
类的 inset
属性
例如:
GridBagConstraints c = new GridBagConstraints();
c.insets = new Insets(3,3,3,3);
希望这就是您要找的。p>
关于java - GridBagLayout Java 中的边距/填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4842261/