2

我正在使用com.jgoodies.forms.builder.PanelBuilder添加按钮和行。然后我调用PanelBuilder.getPanel()并将面板附加到 JPopupMenu。

有没有办法从 PanelBuilder 生成的面板中删除和重新附加一些附加组件:我想动态混合/退出一个附加按钮和相应的空行(添加 PanelBuilder.appendRow("f:30px “))。

谢谢。

4

2 回答 2

2

移除组件确实有效,但会在面板上留下未使用的空间区域。JPanel.revalidate() 仅在添加 JButton 之前未使用 PanelBuilder.appendRow() 时有效。

此外,我无法重新附加已删除的 JButton。它出现在 JPanel 的组件列表中,但不显示。

这就是为什么我要在每个请求上动态创建一个新的 JPanel 并将其分配给 JPopupMenu。

于 2010-07-20T17:19:42.730 回答
0

如果您有对初始项目的 ketp 引用,则没有什么可以阻止您执行

myPanel.remove(theComponent);
于 2010-07-20T15:52:39.137 回答