滚动对象时鼠标光标不会改变

时间:2017-02-13 11:40:21

标签: java swing user-interface mouseover jsplitpane

我遇到了我构建的GUI的问题。我正在尝试在滚动某些对象时设置不同的光标更改 - 即,当鼠标悬停在文本字段上时,当将鼠标悬停在按钮和文本光标上时,手持光标。但是,适当的代码不起作用。我已经尝试了以下两个代码:

*MultiUserChat*

classArmBtn.setCursor(new Cursor(Cursor.HAND_CURSOR));

然而,我知道游标不会改变的原因是因为这些对象位于嵌套在JSplitPane中的面板中。但是,JSplitPane被禁用,因为我不希望它被允许调整大小。有没有办法可以覆盖一个方法并允许这些游标改变?谢谢!

1 个答案:

答案 0 :(得分:1)

  

但是,JSplitPane被禁用,因为我不希望它被允许调整大小。

禁用调整大小的另一种方法是仅禁用分隔符并从splitpane分隔符中删除MouseListener:

BasicSplitPaneUI ui = (BasicSplitPaneUI)splitPane.getUI();
BasicSplitPaneDivider divider = ui.getDivider();
divider.setEnabled( false );

for (MouseListener ml: divider.getListeners(MouseListener.class))
    divider.removeMouseListener( ml );

现在可以设置光标,因为组件未被禁用。