getTabbedPane().addTab("Ground", pnlGround);

public BufferedImage getSelectedImage() {
    return ((SpritePane) getTabbedPane().getSelectedComponent()).getSelectedImage();
}
getTabbedPane().getSelectedComponent()返回null。选择完JTabbedPane旁边的JPanel后,将直接调用它,这是我能提出为什么该方法将返回null组件的唯一原因。因为该标签页是打开的但没有焦点。

但是我正在寻找一种方法来在JTabbedPane中打开打开的选项卡。

另外,getTabbedPane().getComponentAt(i)始终返回null。有6个标签。

getSelectedIndex()返回正确的索引,但是它仍然说如果我传入该组件,则该组件为null。

附言SpritePane只是JPanel的子类。

最佳答案

如果您想获得 Activity /选定的标签,请尝试

int idx = getTabbedPane().getSelectedIndex();

然后,您可以通过以下方式获取标签的组件(例如面板)
Componennt c = getTabbedPane().getComponent(idx);

10-06 05:43