在Swing中禁用鼠标

时间:2016-03-31 16:31:28

标签: java swing

我想在我的Swing应用程序中禁用鼠标光标而不是文本光标。我发现以下代码已设法隐藏光标但未禁用其功能。

// Transparent 16 x 16 pixel cursor image.
BufferedImage cursorImg = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB);
// Create a new blank cursor.
Cursor blankCursor = Toolkit.getDefaultToolkit().createCustomCursor(cursorImg, new Point(0, 0), "blank cursor");
// Set the blank cursor to the JFrame.
getContentPane().setCursor(blankCursor);

有任何解决方案吗?

1 个答案:

答案 0 :(得分:2)

两种解决方案:

  1. 您可以调用所有组件:setEditable(false)。但实际上,即使没有完美做到这一点,最好还是做setEnabled(false)。

  2. 如果您使用的是JFrame,则可以使用JLayeredPane的GlassPane。将其设置为setEnabled(true),它将拦截所有鼠标事件