在JFrame上的JPanel中显示JComponent

wal*_*ers 3 java swing jcomponent jpanel jframe

我无法在JFrame上的JPanel中显示JComponent.

以下不起作用.

JComponent component = ...
panel.add(component, BorderLayout.CENTER);
frame.add(panel, BorderLayout.CENTER);
Run Code Online (Sandbox Code Playgroud)

但是如果我将JComponent添加到JFrame [like frame.add(component, BorderLayout.CENTER);],它会显示内容.

有任何想法吗

jjn*_*guy 5

一个JPanel的默认布局是一个FlowLayout,所以你不必指定面板的中心.

简单地说:

panel.add(component);
Run Code Online (Sandbox Code Playgroud)

或者,做:

panel.setLayout(new BorderLayout());
panel.add(component, BorderLayout.CENTER);
Run Code Online (Sandbox Code Playgroud)