我已阅读了许多关于此主题的主题和问题,但似乎无法找到解决问题的可行解决方案。下面是用于添加和删除组件的方法的代码。动态删除JPanel
public void addAuxPanel (String pType, int pStart, int pEnd) {
int id = mPanels.size();
int xPos = PANEL_START_X;
int yPos = PANEL_START_Y + (PANEL_HEIGHT * id) + 15;
if (id == 0) {
xPos = PANEL_START_X;
}
String type = pType;
int start = pStart;
int end = pEnd;
AuxPanel p = new AuxPanel(type, start, end, id, this);
mPanels.add(p);
p.setBounds(xPos, yPos, 300, 25);
getRootPane().add(p);
getRootPane().repaint();
getRootPane().revalidate();
}
public void removeAuxPanel (AuxPanel pPanel) {
getRootPane().remove(pPanel);
getRootPane().revalidate();
getRootPane().repaint();
}
为了更好的帮助更快,发布[SSCCE](http://sscce.org/)。 *“..没有布局来获取我想要的面板上的元素。”*这可能是问题的核心。一旦布局结束,期待各种各样的惊喜。使用带填充的布局和组件的边界来实现完全适合屏幕和PLAF的布局,*和* robust。 – 2012-02-16 19:13:51