与 JLayeredPane 背后的 JPanel 交互

Interact with JPanel behind JLayeredPane

我最近一直在使用 Java 的 swing 库,我遇到了另一个问题。

我有一个位于 JPanel 之上的透明 JLayeredPane。我需要与 JPanel 交互(使用鼠标监听器),但由于我添加了 JLayeredPane,我无法与 JPanel 交互。

附带说明一下,我打包了我的 JFrame,我想将其打包在 JPanel 周围,而不是 JLayeredPane,但现在 JLayeredPane 似乎优先。

示例 - 请记住面板上实际上有内容,这只是示例。

public Main()
{
    // Main JPanel
    JPanel mainPanel = new JPanel();
    add(mainPanel, BorderLayout.CENTER);

    // JLayeredPane
    add(new JLayeredPane(), BorderLayout.CENTER);

    // Add Mouse Listener
    mainPanel.addMouseListener(new CustomMouseListener());
}

Keep in mind there is actually content on the panels,

MouseListener 应该添加到添加到分层窗格的面板中,而不是包含分层窗格的面板中。