怎样创建自己的 Cursor ?

mattus_zhao 2003-05-02 09:10:25
我需要在程序的不同过程中使用五种不同的 Cursor。
我查阅了JDK 的文档,它说可以使用:
createCustomCursor
public Cursor createCustomCursor(Image cursor,
Point hotSpot,
String name)
throws IndexOutOfBoundsException,
HeadlessException
来创建自己的Cursor,不过我看不懂这个函数,尤其是 Point hotspot 这里。
我已经有五幅相应的图片,我知道首先是根据这五幅图片创建五个 Image 对象,但是然后如何创建相应的五个Cursor对象我就不清楚了。
谢谢!
...全文
282 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
telenths 2003-05-03
  • 打赏
  • 举报
回复
java.awt.Component.setCursor(Cursor cursor)
alin19 2003-05-03
  • 打赏
  • 举报
回复
beyond_xiruo(乱谈情)你来看看
我是这样建立了一个Cursor类,可是怎么让系统把这个cursor实现呢?就是把光标改成
它?还有mouseExited()事件又该怎么写让它实现退出窗口恢复原来的光标
谢谢你,分不够我另开窗口
public void mouseEntered(MouseEvent e) {
setTitle("You entered this frame!");
Cursor cursor =
Toolkit.getDefaultToolkit().createCustomCursor(
yourImage,
new Point(0, 0),
"yourCursor");
}
wyqiang 2003-05-03
  • 打赏
  • 举报
回复
我想说啥
没的说??我见sun公司用自己画图程序来写也比较吗
你可以进去看看
希偌 2003-05-03
  • 打赏
  • 举报
回复
这要跟java语言结合,默认的只支持gif和jpg,如果想支持别的格式需要下载jai包,在sun网站上有最新版下载,其实创建代码就两句代码,根本可以直接写,不必写成函数,通常写在事件里,如鼠标移入的时候
public void mouseEnter(MouseEvent e)
希偌 2003-05-03
  • 打赏
  • 举报
回复
this.setResizable(false);
希偌 2003-05-03
  • 打赏
  • 举报
回复
this.setCursor(yourCursor);
mattus_zhao 2003-05-03
  • 打赏
  • 举报
回复
对于创建这个Cursor的图片有什么要求吗?(是要求什么格式,.jpg,.gif,或者是.bmp)
还有,我是想为一个JPanel定义不同的Cursor, 一般应该在什么函数里创建这些Cursor?
在初始函数里?
谢谢!
telenths 2003-05-03
  • 打赏
  • 举报
回复
> 如何禁止窗口右上角最大化按钮并同时使窗体不能被缩放?
Frame.setResizable(false)
alin19 2003-05-03
  • 打赏
  • 举报
回复
谢谢 telenths(_非法操作_)
但是setCursor不是static的不能通过java.awt.Component来访问
如果你自定义类是继承Component,比如Window.可以在构造函数里
加句this.setCursor(Cursor cursor)即可

另外我在请教个问题:
如何禁止窗口右上角最大化按钮并同时使窗体不能被缩放?
我另开个贴

有请telenths(_非法操作_)&beyond_xiruo(乱谈情)
希偌 2003-05-02
  • 打赏
  • 举报
回复
Point hotSpot是指热区,是一个点,这么说吧:
一个Cursor是一张图片,有一定的面积,当鼠标点击的时候你想让这张图上的哪个点起作用呢?就是这个hotSpot啦,最常见的箭头是以new Point(0,0)为热点,也就是图片的左上角箭头尖儿
自定义Cursor的话如下是一个例子:
Cursor cursor=createCustomCursor(yourImage,new Point(0,0),"myCursor");

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧