Java Applet 入门 16

Java Applet 入门

yy435

太平洋网络学院

第四天

鼠标和键盘事件处理函数

所谓事件,就是指在系统中有某些我们所关心的事情(例如:鼠标移动了,用户按下了某个按键……等)发生了,然后系统便通知我们去处理这些事情。这样的概念在一般采用窗口用户界面环境的操作系统中,是十分常见的。

在Java中,所有的事件都定义在类Event(java.awt.Event)内,读者有兴趣的话,可以参考Java的API。

1)鼠标事件。

鼠标时间一般有:
mouseDown:当鼠标的按键被用户按下时,就会发生MOUSE_DOWN时间,这个时候系统便调用方法mouseDown对该事件进行处理。方法mouseDown的写法为:

public boolean mouseDown(Event e,int x,int y)
{
      ……
}

由上面可知,方法mouseDown有三个参数:e,x,y。e就是事件本身,我们把“事件”看成一个对象实体,只不过它的类是Event而已,同时,事件在使用上和一般的对象实体没有差别。而x,y则是这个时间发生时的鼠标的坐标值。要注意的是它的方法返回值是boolean型的值,这点要注意!另外,由于有些机器的鼠标只有一个按键,考虑到Java的与平台无关性,因此,这个方法中,就没有我们常见的右键的功能了。它不区分左右按键。

mouseUp:与前面的相反,这个方法是鼠标放开时的处理函数了,对于使用方法,与mouseDown完全相同。这儿就不多说了!

mouseMove:MOUSE_MOVE和MOUSE_DRAG都是由鼠标移动产生的事件,方法mouseMove就是用来处理MOUSE_MOVE事件的。方法为:

public boolean mouseMove(Event evt,int x,int y)
{
……
}

所用到的参数和方法mouseDown和mouseUp的完全一样。

mouseDrag:从上面知道,这个方法当然是用来处理MOUSE_DRAG事件的。方法为:

public boolean mouseDrag(Event e,int x,int y)
{
……
}

mouseEnter:这个方法是用来处理MOUSE_ENTER事件的,当鼠标进入到小应用程序的窗口范围时,就会发生MOUSE_ENTER事件。处理方法为 :

public boolean(Event evt, int x,int y)
{
……
}

所用到的参数和前面一样,不多说了。

mouseExit:这个方法是用来处理MOUSE_EXIT事件的。当鼠标从小应用程序窗口移出来的时候,就会发生MOUSE_EXIT事件了。处理方法为:

public boolean (Event e,int x,int y)
{
……
}

好了,让我们来看一看具体的例子:[请点击这儿进入]

2)键盘事件:
和鼠标比起来,键盘产生的时间就简单多了,一般说来,我们关心的就是用户按下了什么键,再处理就行了,而不必像鼠标那样还具有移动的事件要处理。它的主要事件有:

KEY_PRESS:按下键时产生;
KEY_RELEASE:放开键盘按键的时候产生。处理它们方法方法分别为:

public boolean keyDown(Event evt,int x,int y)
{
……
}

public loolean keyUp(Event evt,int x,int y)
{
……
}

参数中的evt还是表示事件本身的对象,而key就是那个被用户按下或放开的案件。Java已经在类Event中,定义好一些表转的按键值,如下:

类变量代表的按键类变量代表的按键
Event.Up方向键中的“上”键Event.F3“F3”键
Event.DOWN方向键中的“下”键Event.F4“F4”键
Event.LEFT方向键中的“左”键Event.F5“F5”键
Event.RIGHT方向键中的“右”键Event.F6“F6”键
Event.HOME“Home”键Event.F7“F7”键
Event.END“End”键Event.F8“F8”键
Event.PGUP“Page Up”键Event.F9“F9”键
Event.PGDN“Page Down”键Event.F10“F10”键
Event.F1“F1”键Event.F11“F11”键
Event.F2“F2”键Event.F12“F12”键
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值