是否可以使用GridBagLayout管理器完全模拟GridLayout的行为?基本上,我有一个8x8网格,其中每个单元格应具有相同的宽度和高度。GridLayout会自动执行此操作。但我想在网格中添加另一行和一列,其大小与其他行和列不同。该行/列应占用所有可能剩余的剩余空间(因为可用大小不能平均分配到8个单元格中)。这有可能吗,还是我必须再次使用不同的布局管理器?编辑这是我想要实现的简单图形,简化为只有4个单元格:彩色单元格是我添加到实际网格(灰色)中的单元格,该网格具有相同高度和宽度x的单元格。所以网格的高度和宽度是4*x。我现在希望额外的单元格具有必要的宽度/高度(最小尺寸)加上
问题在于组件的居中布局,GridBagLayout始终“位于”JPanel的中心,所以我不关心它将如何在内部布局组件,我的问题是这些组件将在面板上开始布局的位置。我试过:panel.setAlignmentX(JPanel.LEFT_ALIGNMENT);但这并没有帮助。有什么想法吗? 最佳答案 您需要添加至少一个组件来填充水平空间。如果你没有这样的组件,你可以试试这个:GridBagConstraintsnoFill=newGridBagConstraints();noFill.anchor=GridBagConstraints.
您好,提前感谢您提供的任何帮助,我正在尝试构建一个简单的程序来学习GUI,但是当我运行下面的代码时,我的JTextFields都显示为一个缝隙,甚至连一个字符都不够大。无法发布图片,但它看起来类似于:标签[|哪里[|是文本字段的实际样子importjava.awt.*;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.*;publicclasslab6startimplementsActionListener{JTextFieldcustNameTxt;JText
是否可以在GridBagLayout中为整行/列设置边距/填充?然而,我在约束对象上使用了插图,使用这种方法我需要在每个组件上设置从底部开始的填充。是否可以填充JFrame中的所有内容?因为现在每个组件都与框架对齐。constraints.weightx=2;constraints.weighty=1;constraints.fill=GridBagConstraints.BOTH;addComponent(this,layout,constraints,questionPanel=newQuestionPanel(),0,0,1,1);constraints.weightx=1;co