不使用BorderLayout.CENTER自动调整JPanel的大小

时间:2014-11-13 15:42:53

标签: java swing jpanel jdesktoppane

我在JPanel内有一个JDesktopPane,当desktopPane的大小发生变化时,我需要自动调整面板大小。

面板的大小始终需要与desktopPane相同。我无法使用BorderLayout.CENTER,因为如果我使用它,我就无法调整desktopPane内的其他帧。

由于

1 个答案:

答案 0 :(得分:2)

使用ComponentListener / Adapter

JDesktopPane desktop = ...;
JPanel p = ...;

ComponentListener cl = new ComponentAdapter() {
  public void componentResized(ComponentEvent ce) {
    //reset your panel size here
  }
}

desktop.addComponentListener(cl);