java的mouselistener差异的Windows XP和Mac操作系统

我正在实现一个Java Swing GUI,它有几个JLabel,在JFrame上显示几次。 为此,我将这些标签实例化并存储在一个Vector中。 对于每个标签,我在JFrame扩展类的构造函数中添加了一个像这样的侦听器:

b1.addMouseListener(new LabelMouseListener(...)); 

每次我想显示标签时,我都从vector中选取它们,并将它们作为一个组件添加到框架上。 这工作正常。 另外,我在构造函数中添加的监听器正在侦听。 但是,在Mac和PC上的行为是有区别的。 在Mac上它工作得很好,但是在PC上(Win XP),我需要在听众反应之前点击标签两次。 LabelMouseListener实现了MouseListener,我重写了mouseClicked方法。 也许这也取决于JavaRE,因为在Mac上我使用1.6,在Win上我使用1.7。 这是一个已知的问题,或者你有什么错误的原因的build议?