Java 在AWT事件模型中冒泡?

Java 在AWT事件模型中冒泡?,java,events,swing,awt,Java,Events,Swing,Awt,如果我在JFrame上实现一个动作事件,它会给我一些按钮 按钮通过getSource单击,但如果在同一帧上实现鼠标事件 它不会为按钮引发事件,但仅针对该JFrame 为什么? 事件冒泡似乎只对动作事件有效,那么Swing实现了什么模型呢 哪些侦听器类型以冒泡方式工作 AWT中冒泡的事件仅适用于鼠标事件,并且仅当子组件上没有鼠标侦听器时才有效 例如,如果您有一个JComboBox,它通常由PL&F通过一个文本字段和一个按钮组件来实现,那么这可能会非常混乱。你可能想看看“玻璃窗” 我建议尽可能忽略包

如果我在
JFrame
上实现一个动作事件,它会给我一些按钮 按钮通过
getSource
单击,但如果在同一帧上实现鼠标事件 它不会为按钮引发事件,但仅针对该
JFrame

为什么?

事件冒泡似乎只对动作事件有效,那么Swing实现了什么模型呢


哪些侦听器类型以冒泡方式工作

AWT中冒泡的事件仅适用于鼠标事件,并且仅当子组件上没有鼠标侦听器时才有效

例如,如果您有一个
JComboBox
,它通常由PL&F通过一个文本字段和一个按钮组件来实现,那么这可能会非常混乱。你可能想看看“玻璃窗”


我建议尽可能忽略包容层次结构。还可以创建了解上下文的侦听器,并使用
getSource
。不要不必要地扩展类(如
JFrame
JPanel
Thread
)。

I如果向按钮添加ActionListener或MouseListener,那么事件的来源就是按钮。如果您得到不同的结果,请发布您的SSCCE(),以演示问题,因为问题在于您的代码,我们无法猜测您可能做错了什么。交叉发布到@xdevel2000
JFrame
没有
addActionListener