有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在JLayeredPane后面与JPanel交互

我最近一直在使用Java的swing库,我发现了另一个问题

我有一个透明的JLayeredPane,它位于JPanel的顶部。我需要与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());
}

共 (1) 个答案

  1. # 1 楼答案

    Keep in mind there is actually content on the panels,

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