java - 使用 GridBagLayout 时组件重叠

标签 java swing jlabel gridbaglayout

在定位我的 JLabel 时,我发现了一个问题,直到现在我还无法解决。 JLabel 重叠。

这是关于网格布局的代码片段:

   c = new GridBagConstraints();

   c.gridx = 0;
   c.gridy = 0;
   c.gridwidth = 3;
   c.fill = GridBagConstraints.HORIZONTAL;
   c.ipady = 20;
   c.weightx = 3;
   c.weighty = 1;
   c.insets = new Insets(0,5,5,5);

   all.add(header, c);

   c.gridx = 0;
   c.gridy = 1;
   c.weightx = 2;
   c.weighty = 4;
   c.insets = new Insets(5,5,5,5);

   all.add(sts, c); //this label overlapped

   c.gridx = 1;
   c.gridy = 1;
   c.weightx = 1;
   c.weighty = 5;
   c.insets = new Insets(5,5,5,5);

   all.add(cl, c); //this label overlapped

提前致谢

最佳答案

gridwidth 为 3 意味着组件将在 x 网格中占据 3 个位置,请阅读 grid bag 布局教程 http://docs.oracle.com/javase/tutorial/uiswing/layout/gridbag.html

第一个组件位于 x0,这会将 3 列扩展到 x2,因此下一个可用网格位置是 x3

关于java - 使用 GridBagLayout 时组件重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15782148/

相关文章:

Java - 设置 JLabel 的宽度/高度

java - 多次通过单击 swing 中的按钮更改标签文本不起作用

java - 将 JLabel 定位在角落

java - 不可变类型包装器

java - (Java) 在运行时动态创建新的 REST Web 服务

java - Spring Boot 搜索两个日期之间的数据

java - import org.appfuse.webapp.action.BaseAction 无法解析

java - 选择复选框或单选按钮

swing - 右键单击按钮/Scala

Java GUI 游戏菜单