setCursor on container而不更改子组件的游标

时间:2010-05-31 20:02:24

标签: java swing

JPanel panel = new JPanel(null);
panel.setSize(400, 400);
panel.add(new JButton("Test"));
panel.setCursor(Cursor.getCursor(Cursor.SOMETHING_SOMETHING_CURSOR));

面板将有一个自定义光标,但我不希望该按钮具有自定义光标。我不想设置每个子组件的光标,因为在我的应用程序中我有很多,我不想用setCursor语句乱丢代码。

有没有办法,比如重写JPanel上的某个方法?某处的“包含”方法用于确定是否需要设置游标。如果它真的在子组件中,我可以欺骗它以为鼠标不在容器中吗? 还有其他漂亮的小动作吗?

1 个答案:

答案 0 :(得分:1)

  

我能欺骗它吗?   鼠标不在容器中,如果是的话   真的在一个子组件?

也许在您的面板上,您可以使用MouseListener。在mouseEntered上设置光标。在mouseExited上,将光标设置为null。