gpt4 book ai didi

java - 如何在 swing 中为光标设置自定义大小?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:53:55 24 4
gpt4 key购买 nike

我正在使用下面的代码为 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);

最佳答案

Windows 似乎只允许大小为 32x32 像素的光标,因此如果您想要其他大小,则必须解决它。

要获得较小的尺寸,请对 32x32 图像使用 createCustomCursor(),其中不需要的像素是透明的。如果您使用 BufferedImage.TYPE_INT_ARGB,您可以使像素透明。

要制作更大的光标,我相信这会起作用:

  • 创建一个完全透明的自定义光标。

  • 使用 mouseMotionListener 获取光标的位置。

  • 在真实(透明)光标的位置绘制光标图像。

关于java - 如何在 swing 中为光标设置自定义大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2620188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com