我正在使用下面的代码来为JPanel设置一个自定义光标,但是当我运行代码时,它扩大了我为光标设置的图像。 有没有办法设置用户定义的光标大小?如何在摆动中设置光标的自定义大小?
Toolkit toolkit = Toolkit.getDefaultToolkit();
BufferedImage erasor=new BufferedImage(10,10, BufferedImage.TYPE_INT_RGB);
Graphics2D g2d=(Graphics2D) erasor.createGraphics();
g2d.setPaint(Color.red);
g2d.drawRect(e.getX(),e.getY() ,10, 10);
toolkit.getBestCursorSize(10, 10);
Cursor mcursor=toolkit.createCustomCursor(erasor, new Point(10,10), "Eraser");
setCursor(mcursor);
Toolkit toolkit = Toolkit.getDefaultToolkit(); Image eraser = toolkit.getImage(“images/eraserpointer.jpg”);图形2D g2d =(Graphics2D)erasor.createGraphics(); toolkit.getBestCursorSize(10,10); 光标mcursor = toolkit.createCustomCursor(橡皮擦,新点(10,10),“橡皮擦”); setCursor(mcursor); 雅,我试着用上面的代码,它是放大图像到一些预定义的大小。 如果还有其他方法,请使用简单的代码片段回复我 – swift 2010-04-12 08:02:28
如果您可以使用自定义大小的游标,则可能与平台有关。因此,我建议您将图像文件(images/eraserpointer.jpg)设置为32x32(在Windows中),并将其绘制为10x10的角落,并让其余部分保持透明。当然,您需要使用支持透明度的文件格式(png或gif)。在其他平台上..我想你只需要为不同的平台有不同大小的图片。 – fish 2010-04-12 09:26:34