检查 JPanel 的布局

Mor*_*idt 2 java layout swing awt

我有以下代码段:

JPanel panel = new JPanel(new GridBagLayout());
Run Code Online (Sandbox Code Playgroud)

我想检查一下,我的面板是否已GridBagLayout分配给它。我让它像这样工作:

if(panel.getLayout().getClass() == GridBagLayout.class) {
   // seems to work
}
Run Code Online (Sandbox Code Playgroud)

虽然它有效,但它有点hacky,因为我不想为此使用反射。

还有其他方法可以检查分配的布局吗?

Ser*_*kyy 5

使用instanceof语句卢克

if(panel.getLayout() instanceof GridBagLayout) {
    // seems to work
}
Run Code Online (Sandbox Code Playgroud)