我似乎无法通过调用来更改 JSplitPane 的调整大小光标有setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
没有人知道如何解决这个问题?我正在使用 Nimbus UI。
问问题
1398 次
2 回答
1
调用组件setCursor
将只为左右(或顶部和底部)组件JSplitPane
设置光标。
要设置分隔线组件的光标,您可以使用:
Component divider = ((BasicSplitPaneUI)splitPane.getUI()).getDivider();
divider.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
于 2012-11-08T18:16:48.547 回答
0
我们可以在 JSplitPane 的 addPropertyChangeListener() 侦听器中添加鼠标侦听器的代码,在加载 GUI 后,我们可以触发此事件以将鼠标侦听器绑定到分隔器。这是我的代码:
splitPanehor.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, (pce) -> {
Component divider1 = ((JSplitPane) pce.getSource()).getComponent(2);
divider1.addMouseListener(new MouseAdapter() {
@Override
public void mouseEntered(MouseEvent e) {
ExomDataGUI.f.setCursor(new Cursor(Cursor.W_RESIZE_CURSOR));
}
@Override
public void mouseExited(MouseEvent e) {
ExomDataGUI.f.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
});
});
我们可以通过以下方式显示 GUI 后触发此事件:
splitPanehor.firePropertyChange(JSplitPane.DIVIDER_LOCATION_PROPERTY, 219, 220);
于 2016-02-29T07:06:03.513 回答