我有一个带有 gridbaglayout 布局的 jpanel,其中有几个 jtextfields、几个 jlabels、几个动态添加的 jbuttons。因此我无法知道它们的具体顺序,因此无法使用 panel.getComponent(count)。我查看了 api 是否有 getGridx(int x) 或 getGridy(int y) 之类的东西。没找到。有没有类似这些方法的东西?
最简单的解决方案可能是使用GridBagLayout#getConstraints(Component)并简单地循环遍历所有组件,直到找到与所需网格位置匹配的组件......
Component match = null;
GridBagLayout layout = ...
for (Component comp : getComponents()) {
GridBagConstraints gbc = layout.getConstraints(comp);
if (gbc.gridx = x && gbc.gridy = y) {
match = comp;
break;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)