搜档网
当前位置:搜档网 › C#中处理鼠标相关的事件

C#中处理鼠标相关的事件

C#中处理鼠标相关的事件
C#中处理鼠标相关的事件

C#中处理鼠标相关的事件

鼠标相关的事件大致有六种,分别是:"MouseHover"、"MouseLeave"、"MouseEnter"、"MouseMove"、"MouseDown"和"MouseUp"。

(1).如何在C#程序中定义这些事件:

在C#中是通过不同的Delegate来描述上述事件,其中描述"MouseHover"、"MouseLeave"、"MouseEnter"事件的Delegate是"EventHandler",而描述后面的三个事件的Delegate是"MouseEventHandler"来描述。这二个Delegate分别被封装在不同的命名空间,其中"EventHandler"被封装在"System"命名空间;"MouseEventHandler"被封装在"Syetem.Windows.Froms"命名空间中的。在为"MouseHover"、"MouseLeave"、"MouseEnter"事件通过数据的类是"EventArgs",他也被封装在"System"命名空间中;而为后面的三个事件提供数据的类是"MouseEventArgs",他却被封装在"Syetem.Windows.Froms"命名空间。以上这些就决定了在C#中定义这些事件和响应这些事件有着不同的处理办法。下面就来介绍这些不同点。

对于上述的前三个事件,是用以下语法来定义的:

"组件名称"."事件名称"+= new System.EventHandler("事件名称");

下面是程序中具体实现代码:

button1.MouseLeave += new Syetem.EvenHandler(button1_MLeave);

在完成了事件的定义以后,就要在程序中加入响应此事件的代码,否则程序编译的时候会报错。下面是响应上面事件的基本结构。

private void button1_MLeave ( object sender , System.EventArgs e )

{

此处加入响应此事件的代码

}

定义"MouseMove"、"MouseDown"和"MouseUp"事件的语法和前面介绍的三个事件大致相同,具体如下:

"组件名称"."事件名称"+= new System.Windows.Forms. MouseEventHandler("事件名称");

下面是程序中具体实现代码:

button1.MouseMove += new System.Windows.Forms.MouseEventHandler (button1_MMove);

下面是响应上面事件的基本结构:

private void button1_MMove ( object sender , System.Windows.Forms. MouseEventArgs e )

{

此处加入响应此事件的代码

}

注释:在上述程序中的"button1"是定义的一个按钮组件。

2).鼠标相关事件中的典型问题处理办法:

在掌握了C#中定义和鼠标相关的事件,我们就来探讨一下和鼠标相关事件的典型问题。其一是读取鼠标的当前位置;其二是判定到底是那个鼠标按键按动。

判定鼠标的位置可以通过事件"MouseMove"来处理,在"MouseEventArgs"类中提供了二个属性"X"和"Y",来判定当前鼠标纵坐标和横坐标。而判定鼠标按键的按动情况,可以通过事件"MouseDown"来处理,并且在"MouseEventArgs"类中也提供了一个属性"Button"来判定鼠标按键情况。根据这些知识,可以得到用C#编写的读取鼠标当前位置和判定鼠标按键情况的程序代码。下面就是此代码(mouse.cs)和此代码编译后运行界面:

代码

using System ;

using System.Drawing ;

using System.Collections ;

using https://www.sodocs.net/doc/f310382792.html,ponentModel ;

using System.Windows.Forms ;

using System.Data ;

public class Form1 : Form

{

private https://www.sodocs.net/doc/f310382792.html,ponentModel.Container components = null ;

public Form1 ( )

{

file://初始化窗体中的各个组件

InitializeComponent ( ) ;

}

file://清除程序中使用过的资源

protected override void Dispose ( bool disposing )

{

if ( disposing )

{

if (components != null)

{

components.Dispose ( ) ;

}

}

base.Dispose ( disposing ) ;

}

private void InitializeComponent ( )

{

this.AutoScaleBaseSize = new System.Drawing.Size ( 6 , 14) ;

this.ClientSize = new System.Drawing.Size ( 292 , 273 ) ;

https://www.sodocs.net/doc/f310382792.html, = "Form1" ;

this.Text = "C#处理鼠标按动事件!" ;

file://为鼠标按动定义一个事件处理过程"Form1_MouseDown"

this.MouseDown += new MouseEventHandler ( Form1_MouseDown ) ; file://为鼠标移动定义一个事件处理过程"Form1_MouseMove"

this.MouseMove += new MouseEventHandler ( Form1_OnMouseMove ) ;

}

static void Main ( )

{

Application.Run ( new Form1 ( ) ) ;

}

private void Form1_OnMouseMove ( object sender , MouseEventArgs e ) {

this.Text = "当前鼠标的位置为:( " + e.X + " , " + e.Y + ")" ;

}

private void Form1_MouseDown ( object sender , MouseEventArgs e ) {

file://响应鼠标的不同按键

if ( e.Button == MouseButtons.Left )

{

MessageBox.Show ( "按动鼠标左键!" ) ;

}

if ( e.Button == MouseButtons.Middle )

{

MessageBox.Show ( "按动鼠标中键!") ;

}

if ( e.Button == MouseButtons.Right )

{

MessageBox.Show ( "按动鼠标右键!") ;

}

}

}

intellij idea快捷大全

Alt+回车导入包,自动修正 Ctrl+N 查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,构造函数等) Ctrl+E或者Alt+Shift+C 最近更改的代码 Ctrl+R 替换文本 Ctrl+F 查找文本 Ctrl+Shift+Space 自动补全代码 Ctrl+空格代码提示 Ctrl+Alt+Space 类名或接口名提示 Ctrl+P 方法参数提示 Ctrl+Shift+Alt+N 查找类中的方法或变量 Alt+Shift+C 对比最近修改的代码 Shift+F6 重构-重命名 Ctrl+Shift+先上键 Ctrl+X 删除行 Ctrl+D 复制行 Ctrl+/ 或Ctrl+Shift+/ 注释(// 或者/*...*/ ) Ctrl+J 自动代码 Ctrl+E 最近打开的文件 Ctrl+H 显示类结构图 Ctrl+Q 显示注释文档 Alt+F1 查找代码所在位置 Alt+1 快速打开或隐藏工程面板 Ctrl+Alt+ left/right 返回至上次浏览的位置 Alt+ left/right 切换代码视图 Alt+ Up/Down 在方法间快速移动定位 Ctrl+Shift+Up/Down 代码向上/下移动。 F2 或Shift+F2 高亮错误或警告快速定位 代码标签输入完成后,按Tab,生成代码。 选中文本,按Ctrl+Shift+F7 ,高亮显示所有该文本,按Esc高亮消失。Ctrl+W 选中代码,连续按会有其他效果 选中文本,按Alt+F3 ,逐个往下查找相同文本,并高亮显示。 Ctrl+Up/Down 光标跳转到第一行或最后一行下 Ctrl+B 快速打开光标处的类或方法 Intellij IDEA最常用快捷键 1.Ctrl+E,可以显示最近编辑的文件列表 2.Shift+Click可以关闭文件 3.Ctrl+[或]可以跳到大括号的开头结尾 4.Ctrl+Shift+Backspace可以跳转到上次编辑的地方 5.Ctrl+F12,可以显示当前文件的结构 6.Ctrl+F7可以查询当前元素在当前文件中的引用,然后按F3可以选择

adb shell中模拟键盘鼠标事件

Android自动化测试初探-5:再述模拟键盘鼠标事件(adb shell 实现) 2010-07-28 17:01 上一篇博文中讲述了通过Socket编程从外部向Emulator发送键盘鼠标模拟事件,貌似实现细节有点复杂。其实Android还有一种更简单的模拟键盘鼠标事件的方法,那就是通过使用adb shell 命令。 1. 发送键盘事件: 命令格式1:adb shell input keyevent “value” 其中value以及对应的key code如下表所列: KeyEvent Value KEYCODE Comment KEYCODE_UNKNOWN 1 KEYCODE_MENU 在SDK2.1的模拟器中命令失效,sendevent命令可行 2 KEYCODE_SOFT_RIGHT 3 KEYCODE_HOME 4 KEYCODE_BACK 5 KEYCODE_CALL 6 KEYCODE_ENDCALL

KEYCODE_0 8 KEYCODE_1 9 KEYCODE_2 10 KEYCODE_3 11 KEYCODE_4 12 KEYCODE_5 13 KEYCODE_6 14 KEYCODE_7 15 KEYCODE_8 16 KEYCODE_9 17 KEYCODE_STAR

KEYCODE_POUND 19 KEYCODE_DPAD_UP 20 KEYCODE_DPAD_DOWN 21 KEYCODE_DPAD_LEFT 22 KEYCODE_DPAD_RIGHT 23 KEYCODE_DPAD_CENTER 24 KEYCODE_VOLUME_UP 25 KEYCODE_VOLUME_DOWN 26 KEYCODE_POWER 27 KEYCODE_CAMERA 28 KEYCODE_CLEAR

Javascript鼠标触发事件大全

Javascript鼠标事件大全 一般事件 事件浏览器支持描述 onClick IE3|N2|O3 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击 onDblClick IE4|N4|O 鼠标双击事件onMouseDown IE4|N4|O 鼠标上的按钮被按下了onMouseUp IE4|N4|O 鼠标按下后,松开时激发的事件 onMouseOver IE3|N2|O3 当鼠标移动到某对象范围的上方时触发的事件 onMouseMove IE4|N4|O 鼠标移动时触发的事件 onMouseOut IE4|N3|O3 当鼠标离开某对象范围时触发的事件 onKeyPress IE4|N4|O 当键盘上的某个键被按下并且释放时触发的事件.[注意:页面内必须有被聚焦的对象] onKeyDown IE4|N4|O 当键盘上某个按键被按下时触发的事件[注意:页面内必须有被聚焦的对象] onKeyUp IE4|N4|O 当键盘上某个按键被按放开时触发的事件[注意:页面内必须有被聚焦的对象] 页面相关事件 事件浏览器支持描述 onAbort IE4|N3|O 图片在下载时被用户中断 onBeforeUnload IE4|N|O 当前页面的内容将要被改变时触发的事件 onError IE4|N3|O 捕抓当前页面因为某种原因而出现的错误,如脚本错误与外部数据引用的错误 onLoad IE3|N2|O3 页面内空完成传送到浏览器时触发的事件,包括外部文件引入完成 onMove IE|N4|O 浏览器的窗口被移动时触发的事件onResize IE4|N4|O 当浏览器的窗口大小被改变时触发

模拟键盘鼠标事件

android中的MotionEvent 及其它事件处理 2014-09-18 08:47 7386人阅读评论(0) 收藏举报 MotionEvent对象 当用户触摸屏幕时将创建一个MotionEvent对象。MotionEvent包含关于发生触摸的位置和时间等细节信息。MotionEvent对象被传递到程序中合适的方法比如View对象的onTouchEvent()方法中。在这些方法中我们可以分析MotionEvent对象那个,以决定要执行的操作。 MotionEvent对象是与用户触摸相关的时间序列,该序列从用户首次触摸屏幕开始,经历手指在屏幕表面的任何移动,直到手指离开屏幕时结束。手指的初次触摸(ACTION_DOWN 操作),滑动(ACTION_MOVE操作)和抬起(ACTION_UP)都会创建MotionEvent对象。所以每次触摸时候这三个操作是肯定发生的,而在移动过程中会产生大量事件,每个事件都会产生对应的MotionEvent对象记录发生的操作,触摸的位置,使用的多大压力,触摸的面积,合适发生,以及最初的ACTION_DOWN和时发生等相关的信息。 在设置事件时我们有2种设置的方式,一种是委托式一种是回调式。第一种就是将事件的处理委托给监听器处理,你可以定义一个View.OnTouchListener接口的子类作为监听器,其中有onTouch()方法。而第二种是重写View类自己本身的onTouchEvent方法,也就是控件自己处理事件。onTouch方法接收一个MotionEvent参数和一个View参数,而onTouchEvent方法仅接收MotionEvent参数。这是因为监听器可以监听多个View 控件的事件。通过MotionEvent方法getation可以得到该Motionevent具体是哪个操作如ACTION_DOWN。 1、MotionEvent中getAction()与getActionMasked()的区别 如果我们在监听Ontouch()里面测试的时候会发现,这两个返回值竟然是一样的。查询API 我们发现ACTION_MASK说明是:Constant Value: 255 (0x000000ff)。也就是哦0Xff. public final intgetAction () Return the kind of action being performed. Consider using getActionMasked() and getActionIndex() to retrieve the separate masked action and pointer index. 翻译意思大概是返回action的类型,考虑使用getActionMasked()和getActionIndex()来获得单独的经过掩码的action和触控点的索引. public final intgetActionMasked () Return the masked action being performed, without pointer index information. Use getActionIndex() to return the index associated with pointer actions.

JS:页面事件、表单事件、滚动字幕事件、编辑事件、数据绑定、外部事件

js(javascript)大全:页面事件、表单事件、滚动字幕事件、编辑事件、数据绑定、外部事件 2011-01-01 12:40 一般事件 onClick 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击onDblClick 鼠标双击事件 onMouseDown 鼠标上的按钮被按下了 onMouseUp 鼠标按下后,松开时激发的事件 onMouseOver 当鼠标移动到某对象范围的上方时触发的事件onMouseMove 鼠标移动时触发的事件 onMouseOut 当鼠标离开某对象范围时触发的事件 onKeyPress 当键盘上的某个键被按下并且释放时触发的事件.[注意:页面内必须有被聚焦的对象] onKeyDown 当键盘上某个按键被按下时触发的事件[注意:页面内必须有被聚焦的对象] onKeyUp 当键盘上某个按键被按放开时触发的事件[注意:页面内必须有被聚焦的对象] 页面相关事件 onAbort 图片在下载时被用户中断 onBeforeUnload 当前页面的内容将要被改变时触发的事件 onError 捕抓当前页面因为某种原因而出现的错误,如脚本错误与外部数据引用的错误 onLoad 页面内空完成传送到浏览器时触发的事件,包括外部文件引入完成 onMove 浏览器的窗口被移动时触发的事件 onResize 当浏览器的窗口大小被改变时触发的事件 onScroll 浏览器的滚动条位置发生变化时触发的事件 onStop 浏览器的停止按钮被按下时触发的事件或者正在下载的文件被中断 onUnload 当前页面将被改变时触发的事件 表单相关事件 onBlur 当前元素失去焦点时触发的事件 [鼠标与键盘的触发均可] onChange 当前元素失去焦点并且元素的内容发生改变而触发的事件[鼠标与键盘的触发均可] onFocus 当某个元素获得焦点时触发的事件 onReset 当表单中RESET的属性被激发时触发的事件 onSubmit 一个表单被递交时触发的事件

win8命令大全

1.appwiz.cpl:程序和功能 2.calc:启动计算器 3.certmgr.msc:证书管理实用程序 4.charmap:启动字符映射表 5.chkdsk.exe:Chkdsk磁盘检查(管理员身份运行命令提示符) 6.cleanmgr: 打开磁盘清理工具 7.cliconfg:SQL SERVER 客户端网络实用工具 8.cmstp:连接管理器配置文件安装程序 9.cmd.exe:CMD命令提示符 10.自动关机命令 Shutdown -s -t 600:表示600秒后自动关机 shutdown -a :可取消定时关机 Shutdown -r -t 600:表示600秒后自动重启 rundll32 user32.dll,LockWorkStation:表示锁定计算机 11.colorcpl:颜色管理,配置显示器和打印机等中的色彩 https://www.sodocs.net/doc/f310382792.html,pMgmtLauncher:计算机管理 https://www.sodocs.net/doc/f310382792.html,pmgmt.msc:计算机管理 14.credwiz:备份或还原储存的用户名和密码 https://www.sodocs.net/doc/f310382792.html,exp.msc:打开系统组件服务 16.control:控制面版 17.dcomcnfg:打开系统组件服务 18.Dccw:显示颜色校准

19.devmgmt.msc:设备管理器 20.desk.cpl:屏幕分辨率 21.dfrgui:优化驱动器Windows 7→dfrg.msc:磁盘碎片整理程序 22.dialer:电话拨号程序 23.diskmgmt.msc:磁盘管理 24.dvdplay:DVD播放器 25.dxdiag:检查DirectX信息 26.eudcedit:造字程序 27.eventvwr:事件查看器 28.explorer:打开资源管理器 29.Firewall.cpl:Windows防火墙 30.FXSCOVER:传真封面编辑器 31.fsmgmt.msc:共享文件夹管理器 32.gpedit.msc:组策略 33.hdwwiz.cpl:设备管理器 34.inetcpl.cpl:Internet属性 35.intl.cpl:区域 36.iexpress:木马捆绑工具,系统自带 37.joy.cpl:游戏控制器 38.logoff:注销命令 39.lusrmgr.msc:本地用户和组 40.lpksetup:语言包安装/删除向导,安装向导会提示下载语言包

第三章常见的鼠标键盘交互方法

TrackBall模式 Trackball模式是跟踪球模式,具体来说,就是物体的中心位置不变,而改变视点的位置,从而使模型随着鼠标的移动绕着中心位置旋转。 对于鼠标移动需要计算相应的视点(照相机)的运动情况,在osg中,通过TrackballManipulator::calcMovement()来实现,并且对于不同的鼠标事件,分别进行如下的操作: 1.按下鼠标的左键,则旋转照相机。 2.按下鼠标中间键或者同时按下鼠标的左键和与右键,则改变物体的中心位置,也即对物体进行平移操作。 3.按下鼠标的右键,则对模型进行缩放。 在按下鼠标的左键从而旋转照相机时,这里主要模拟了一个跟踪球技术,球的半径理想情况下应该基于旋转中心到鼠标所指的物体上某点的距离,但是为了简化处理,一般情况下,球的半径TRACKBALLSIZE可以预先给定,也能达到比较好的模拟效果。具体实现过程如下:首先分别记录两次鼠标事件的坐标的(x1,y1)和(x2,y2),根据x坐标的最小值X min和最大值X max,以及y坐标的最小值Y min和最大值Y max,对(x1,y1)和(x2,y2)坐标进行规范化,转化到(-1,1)之间,不妨假设新的坐标点为p1和p2,然后通过将p1和p2投影到跟踪球上,从而获取相应的z 坐标。这样,以球的中心为起始点,计算出的球上的两个点为终点,可以确定两个向量,不妨记作P1和P2,那么旋转轴axis = P2^ P1,旋转的弧度为:t = ||(P2- P1)|| / (2.0*TRACKBALLSIZE),为了避免产生某些不可操纵的结果,必须先将t规范到(-1,1)之间,再将其转化为角度angles,然后将照相机绕着axis旋转angles的角度,从而实现了对照相机的旋转操作。 在osg的实现中,该跟踪球并不是一个正规的球体,而是进行了一定的变形,在中心附近是一个半径为TRACKBALLSIZE的球体,而在离中心达到一定距离时(小于球的半径TRACKBALLSIZE),该球体被扭曲成了四个双曲面。 在Trackball模式的具体实现时,有许多细节问题,如 1.首先需要将世界坐标系转化到视点坐标系,这可以通过先将中心平移到视点后根据照相机的up、物体的中心以及视点重新确立坐标系。在osg中,由void TrackballManipulator::computePosition(const osg::Vec3& eye,const osg::Vec3& center,const osg::Vec3& up)实现。 2.模型的旋转通过鼠标控制,因此需要判断鼠标是否移动,具体实现时,可以预先自定义一个速率v,分别记录下连续两次鼠标事件的时间和位置,计算出间隔的时间?t和移动的距离?s,如果?s > v * ?t,就可以认为鼠标移动,并根据鼠标的具体事件(如按下的是左键、右键等)进行相应的操作。在osg中,由bool TrackballManipulator::isMouseMoving()实现。 3.需要有一个函数接收不同的鼠标和键盘事件,从而做出相应的处理。在osg中,由bool TrackballManipulator::handle(const GUIEventAdapter& ea,GUIActionAdapter& us)实现,如果事件被正确处理,返回true,否则返回false。其中GUIEventAdapter接受来自GUI的更新事件,GUIActionAdapter则是对这些GUI事件的回应。 Quaternion The quaternions are members of a noncommutative division algebra first invented by William Rowan Hamilton. The idea for quaternions occurred to him while he was walking along the Royal

Windows 所有消息 的列表

hwnd 32位的窗口句柄。窗口可以是任何类型的屏幕对象,因为Win32能够维护大多数可视对象的句柄(窗口、对话框、按钮、编辑框等)。 message 用于区别其他消息的常量值,这些常量可以是Windows单元中预定义的常量,也可以是自定义的常量。 wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄。 lParam 通常是一个指向内存中数据的指针。由于W P a r a m、l P a r a m 和P o i n t e r都是3 2位的,因此,它们之间可以相互转换。 WM_NULL = $0000; WM_CREATE = $0001; 应用程序创建一个窗口 WM_DESTROY = $0002; 一个窗口被销毁 WM_MOVE = $0003; 移动一个窗口 WM_SIZE = $0005; 改变一个窗口的大小 WM_ACTIVATE = $0006; 一个窗口被激活或失去激活状态; WM_SETFOCUS = $0007; 获得焦点后 WM_KILLFOCUS = $0008; 失去焦点 WM_ENABLE = $000A; 改变enable状态

WM_SETREDRAW = $000B; 设置窗口是否能重画 WM_SETTEXT = $000C; 应用程序发送此消息来设置一个窗口的文本 WM_GETTEXT = $000D; 应用程序发送此消息来复制对应窗口的文本到缓冲区 WM_GETTEXTLENGTH = $000E; 得到与一个窗口有关的文本的长度(不包含空字符) WM_PAINT = $000F; 要求一个窗口重画自己 WM_CLOSE = $0010; 当一个窗口或应用程序要关闭时发送一个信号 WM_QUERYENDSESSION = $0011; 当用户选择结束对话框或程序自己调用ExitWindows函数WM_QUIT = $0012; 用来结束程序运行或当程序调用postquitmessage函数 WM_QUERYOPEN = $0013; 当用户窗口恢复以前的大小位置时,把此消息发送给某个图标WM_ERASEBKGND = $0014; 当窗口背景必须被擦除时(例在窗口改变大小时) WM_SYSCOLORCHANGE = $0015; 当系统颜色改变时,发送此消息给所有顶级窗口 WM_ENDSESSION = $0016;

脚本代码大全

- Go to 跳转到指定的帧 - Play 播放 - Stop 停止 - Toggle High Quality 在高画质和低画质间切换- Stop All Sounds 停止所有声音的播放 - Get URL 跳转至某个超联结 - FSCommand 发送FSCommand命令 - Load Movie 装载影片 - Unload Movie 卸载影片 - Tell Target 告知目标 - If Frame Is Loaded ..判断帧是否被完全载入- On Mouse Event 鼠标事件 。其他Actions。包括: - break 跳出循环 - call 调用指定帧(一般喊有某个特定函数) - comment 注释 - continue 继续循环 - delete 删除一个对象(Object)中的变量 - do while do while循环 - duplicateMovieClip 复制MC

- else 否则(与if联用) - else if 否则如果(与if联用) - evaluate 调用自定义函数(Function) - for for循环 - for .. in 依次取得对象(Object)中的各个属性或者某个数组 中的所有元素 - FSCommand 发送FSCommand命令 - function 声明自定义函数 - getURL 跳转至某个超联结 - goto 跳转到指定的帧 - if 如果 - ifFrameLoaded ..帧是否完全被载入 - include 读入外部的ActionScript程序文件(.as) - loadMovie 装载MC - loadVariables 转载外部文件中的数据,这些外部文件可以是文本文件,或者是由ASP/CGI等脚本返回的文本值 - on 鼠标事件的触发条件 - onClipEvent MC的事件触发程序 - play 播放 - print 输出到打印机 - removeMovieClip 删除MC - return 在函数(function)中返回一个值

android详细解释键盘和鼠标事件

https://www.sodocs.net/doc/f310382792.html,/jinhaijian/article/details/6013985 目的:通过全面的分析Android的鼠标和键盘事件。了解Android中如何接收和处理键盘和鼠标事件,以及如何用代码来产生事件。 主要学习内容: 1. 接收并处理鼠标事件:按下、弹起、移动、双击、长按、滑动、滚动 2. 接收并处理按键事件:按下、弹起 3. 模拟鼠标/按键事件 1. Android事件 现代的用户界面,都是以事件来驱动的来实现人机交换的,而Android上的一套UI控件,无非就是派发鼠标和键盘事件,然后每个控件收到相应的事件之后,做相应的处理。如Button 控件,就只需要处理Down、move、up这几个事件,Down的时候重绘控件,move的时候一般也需要重绘控件,当up的时候,重绘控件,然后产生onClick事件。在Android中通过实现OnClickListener接口的onClick方法来实现对Button控件的处理。 对于触摸屏事件(鼠标事件)有按下有:按下、弹起、移动、双击、长按、滑动、滚动。按下、弹起、移动(down、move、up)是简单的触摸屏事件,而双击、长按、滑动、滚动需要根据运动的轨迹来做识别的。在Android中有专门的类去识别,android.view.GestureDetector。 对于按键(keyevent),无非就是按下、弹起、长按等。 2. Android事件处理 Android手机的坐标系是以左上定点为原点坐标(0,0), 向右为X抽正方形,向下为Y抽正方向。 2.1 简单触摸屏事件 在Android中任何一个控件和Activity都是间接或者直接继承于android.view.View。一个View对象可以处理测距、布局、绘制、焦点变换、滚动条,以及触屏区域自己表现的按键

★office办公软件-ppt操作技巧大全(总结)

心之所向,所向披靡 一些PPT技巧总结 1、快速放映:无需点击菜单栏中“观看放映”选项,直接按F5 键,幻灯片就开始放映。 2、快速停止放映:除了按“ESC”键外还可以按“-”键,快速停止放映。 3、任意进到第n 张幻灯片:在放映中如果你想回到或进到第n 张幻灯片,怎样操作能快速实现?此时你只要按数字n,再同时按“+”和回车键,就可以实现。 4、快速显示黑屏,或从黑屏返回到幻灯片放映:在放映中如果你想显示黑屏,此时你只要按一下B 或者“.”键,就可以实现。此时再重复按一下B 或者“.”键,又可从黑屏返回到幻灯片放映。 5、显示白屏,或从白屏返回到幻灯片放映:按W或者“,”键,就可以从放映状态切换到显示白屏,再重复按一下W或者“,”键,又可从白屏返回到幻灯片放映。 6、隐藏和显示鼠标指针:放映时鼠标指针老是出现在画面上可能会让人感觉不舒服,此时按CTRL+H就可以隐藏鼠标指针;反过来按CTRL+A 隐藏的鼠标指针又会重现。 7、返回到第一张幻灯片:你只要同时按住鼠标的左右键2秒以上,就可以从任意放映页面快速返回到第一张幻灯片。 8、暂停或重新开始自动幻灯片放映:对于自动放映的幻灯片,如果你想暂停或者重新开始自动放映,此时只要按S或者“+”键就可以实现。 9、放映过程中也可以在幻灯片上书写:a)在幻灯片的放映过程中,有可能要在幻灯片上写写划划,例如画一幅图表或者在字词下面划线加注重号。这时可以利用PPT所拥有的虚拟注释笔,在作演示的同时也可以在幻灯片上作标记。b)使用注释笔方法:首先在幻灯片放映窗口中单击鼠标右键,出现图5,再依次选择“指针选项”、“绘图笔”即可,用画笔完成所需动作之后,再按ESC 键退出绘图状态。 10、在幻灯片放映过程中显示快捷方式:在放映PPT 幻灯片时如果你忘记了快速快捷方式,你只需按下F1(或SHIFT+?),就会出现一个帮助窗口,参照其中的内容。 11、在PPT当中把图片裁剪成任意的形状:首先利用“绘图”工具栏画一个想要裁剪的图形,如椭圆。选中椭圆后单击“绘图”工具栏上“填充颜色”按钮右侧黑三角,从列表菜单中单击“填充效果”命令。打开选择“图片”选项卡,单击(选择图片)按钮,从“选择图片”对话框中找到合适的图片,单击(插入)按钮后返回到“填充效果”对话框最后单击(确定)按钮后退出。此图片当作椭圆图形的背景出现,改变了原来的矩形形状,获得了满意的裁剪图片效果

)掌握 WINDOWS 操作系统中键盘和鼠标的基本操作;备课讲稿

)掌握W I N D O W S操作系统中键盘和鼠标的 基本操作;

步骤/方法 1 一:基本硬件组成简介 (1)计算机的基本组成 计算机从外观上来看主要有主机和显示器组成,计算机系统由运算器,控制器,存储器,输入设备和输出设备五大部分组成。运算器和控制器集成在一起又称为中央处理器简称为CPU;存储器分为内部存储器和外部存储器,内部存储器简称为内存(RAM),外部存储器简称为外存如硬盘,光盘,移动磁盘等;输入设备是用来从外界向计算机系统输入数据的唯一途径,常见的输入设备有鼠标,键盘,扫描仪等;输出设备是计算机将处理结果显示给用户的,常见的输出设备有显示器,绘图仪,音响等。 (2)主机的组成 主机由主板,内存, CPU,硬盘,光驱,数据线和电源。 (3)主机面板按钮 开机按钮(Power),复位键(Rest)死机时按一下该键系统将重 新启动。 (4)面板接口 计算机主机前面板上一般有USB和音响和话筒接口,BUS接口又称为即插即用接口(不用关闭计算机系统,在开机状态可以直接插),USB设备均可以使用此接口和计算机相连接,常见的USB设备有USB键盘,USB鼠标,USB 口打印机,U盘,移动硬盘等,此外还可以用来和数码相机,手机相连接。用

户要特别注意的是我们称USB设备为即插即用设备但是向移动类存储磁盘最好不要直接拔出,因为这样容易损坏磁盘导致数据丢失。正确的方法是:单击桌面右下角的图标,然后单击右下角弹出的小窗口,等出现“安全删除USB”再拔下USB设备。计算机主机后面板上有电源,POST,串口,并口,显示器,网络,USB,音响和话筒接口,这些接口大部分是主板上自带的。声卡,网卡,显卡可以是主板上集成的设备也可以是独立的设备。注:不同的主板接口布局有所不同,但是接口规格和形式都是符合国际标准的。 串口:这种接口的数据传送模式是串行通讯,所以它只能连接串行设备。 并口:这种接口的数据传送模式是并行通讯,主要和并口设备连接,通常可以和并口打印机相连接。 COM口:COM口有两个,一个COM口是鼠标接口,一个COM口是键盘接口,接口的旁边都有标示。 2 二:计算机软件介绍 (1)系统软件:Windows98/2000/2002/XP Windows优化大师。(2)应用软件:Word/Excel/Photoshop(应用于某一领域)。 三:开机、关机 (1)开机:①先打开显示器开关按钮(标有Power字样的按钮)。 ②再打开主机开关按钮(标有Power字样的按钮)。 (2)关机:①单击“开始”菜单。 ②单击“关闭计算机”。

键盘各键的值及事件

1、Dialog类 Dialog(Frame f,String s) 构造对话框,初始不可见,s是标题,f是对话框所依赖的窗口Dialog(Frame f,String s,boolean b) b设置初始是否可见 getTitle() 获取对话框标题 setTitle(String s) 设置对话框标题 setModal(boolean b) 设置对话框模式 setSize(int w,int h) 设置对话框大小 setVisible(boolean b) 显示或隐藏对话框 2、FileDialog类 Filedialog(Frame f,String s,int mode) mode的值是fileDialog.LOAD或者fileDialog.SAVE public String getDirectory() 获取当前文件对话框中显示的文件所属目录 public String getFile() 获取当前文件对话框中文件的字符串表示,不存在返回null Java中的鼠标和键盘事件 1、使用MouseListener借口处理鼠标事件 鼠标事件有5种:按下鼠标键,释放鼠标键,点击鼠标键,鼠标进入和鼠标退出 鼠标事件类型是MouseEvent,主要方法有: getX(),getY() 获取鼠标位置 getModifiers() 获取鼠标左键或者右键 getClickCount() 获取鼠标被点击的次数 getSource() 获取鼠标发生的事件源 事件源获得监视器的方法是addMouseListener(),移去监视器的方法是removeMouseListener() 处理事件源发生的时间的事件的接口是MouseListener 接口中有如下的方法mousePressed(MouseEvent) 负责处理鼠标按下事件 mouseReleased(MouseEvent) 负责处理鼠标释放事件 mouseEntered(MouseEvent) 负责处理鼠标进入容器事件 mouseExited(MouseEvent) 负责处理鼠标离开事件 mouseClicked(MouseEvent) 负责处理点击事件 2、使用MouseMotionListener接口处理鼠标事件 事件源发生的鼠标事件有2种:拖动鼠标和鼠标移动 鼠标事件的类型是MouseEvent 事件源获得监视器的方法是addMouseMotionListener() 处理事件源发生的事件的接口是MouseMotionListener 接口中有如下的方法mouseDragged() 负责处理鼠标拖动事件 mouseMoved() 负责处理鼠标移动事件 3、控制鼠标的指针形状 setCursor(Cursor.getPreddfinedCursor(Cursor.鼠标形状定义)) 鼠标形状定义见(书P 210)4、键盘事件 键盘事件源使用addKeyListener 方法获得监视器 键盘事件的接口是KeyListener 接口中有3个方法 public void keyPressed(KeyEvent e) 按下键盘按键 public void keyReleased(KeyEvent e) 释放键盘按键 public void keyTypde(KeyEvent e) 按下又释放键盘按键

JS禁止WEB页面鼠标事件大全

1.将彻底屏蔽鼠标右键,无右键菜单 也可以用于网页中Table框架中

no
2.取消选取、防止复制 3.不准粘贴 4.防止复制 5.IE地址栏前换成自己的图标

说明:关于favicon.ico文件的制作。你可以先在FW中做一个图片,属于你自己站点一个小图标。然后在ACD see将文件属性改为*.ico,然后将你做的*.ICO 文件传到你的服务器目录中,然后就可以使用以上代码来实现,当别人登陆你的站点时,地址栏里使用的就是你自定义的图标了。很PP哦。 6.可以在收藏夹中显示出你的图标 在网页的〈head〉〈/head〉间加入以下语句: 〈link rel="shortcuticon" href="http://…/icon.ico"〉 即可。其中 icon.ico 为 16x16 的图标文件, 颜色不要超过 16 色。 说明:制作方法和上面的一样。只是显示的方式不同,这个是在别人收藏你的网页地址时显示的个性图标。也很PP. 7.关闭输入法 说明:这段代码是在表格提交时用到的。也就是在输入数据时不可以使用其他输入法模式。 网页经典代码(二) 8.永远都会带着框架 说明:frames.htm为你的网页,这也是保护页面的一种方法 9.防止被人frame 10.网页将不能被另存为

鼠标事件大全

事件解说 一般事件 onclick 鼠标点击时触发此事件ondblclick 鼠标双击时触发此事件onmousedown 按下鼠标时触发此事件onmouseup 鼠标按下后松开鼠标时触发此事件onmouseover 当鼠标移动到某对象范围的上方时触发此事 件 onmousemove 鼠标移动时触发此事件onmouseout 当鼠标离开某对象范围时触发此事件onkeypress 当键盘上的某个键被按下并且释放时触发此 事件. onkeydown 当键盘上某个按键被按下时触发此事件onkeyup 当键盘上某个按键被按放开时触发此事件 页面相关事件 onabort 图片在下载时被用户中断onbeforeunload 当前页面的内容将要被改变时触发此事件onerror 出现错误时触发此事件 onload 页面内容完成时触发此事件 onmove 浏览器的窗口被移动时触发此事件onresize 当浏览器的窗口大小被改变时触发此事件onscroll 浏览器的滚动条位置发生变化时触发此事件onstop 浏览器的停止按钮被按下时触发此事件或者 正在下载的文件被中断onunload 当前页面将被改变时触发此事件 表单相关事 onblur 当前元素失去焦点时触发此事件onchange 当前元素失去焦点并且元素的内容发生改变 而触发此事件 onfocus 当某个元素获得焦点时触发此事件onreset 当表单中RESET的属性被激发时触发此事件

件onsubmit 一个表单被递交时触发此事件 滚动字幕事件onbounce 在Marquee内的内容移动至Marquee显示 范围之外时触发此事件 onfinish 当Marquee元素完成需要显示的内容后触发 此事件 onstart 当Marquee元素开始显示内容时触发此事件 编辑事件 onbeforecopy 当页面当前的被选择内容将要复制到浏览者 系统的剪贴板前触发此事件onbeforecut 当页面中的一部分或者全部的内容将被移离 当前页面[剪贴]并移动到浏览者的系统剪贴板 时触发此事件onbeforeeditfoc us 当前元素将要进入编辑状态onbeforepaste 内容将要从浏览者的系统剪贴板传送[粘贴]到 页面中时触发此事件onbeforeupdate 当浏览者粘贴系统剪贴板中的内容时通知目 标对象oncontextmenu 当浏览者按下鼠标右键出现菜单时或者通过 键盘的按键触发页面菜单时触发的事件oncopy 当页面当前的被选择内容被复制后触发此事 件 oncut 当页面当前的被选择内容被剪切时触发此事 件 ondrag 当某个对象被拖动时触发此事件[活动事件] ondragdrop 一个外部对象被鼠标拖进当前窗口或者帧ondragend 当鼠标拖动结束时触发此事件,即鼠标的按钮 被释放了 ondragenter 当对象被鼠标拖动的对象进入其容器范围内

QT 篇键盘、鼠标事件的处理

键盘、鼠标事件的处理 事件是对各种应用程序需要知道的由应用程序内部或者外部产生的事情或者动作的通称。对于初学者,总会对Qt中信号和事件的概念混淆不清。其实,记住事件比信号更底层就可以了。比如说,我们用鼠标按下界面上的一个按钮,它会发射clicked()单击信号,但是,它怎么知道自己被按下的呢,那就是通过鼠标事件处理的。这里可以看到,鼠标事件比信号更底层。 在Qt中处理事件有多种方法,不过最常用的是重写Qt事件处理函数。这里我们就以鼠标事件和键盘事件为例来进行简单的介绍。 一、鼠标事件 1.新建Qt Gui应用,项目名称为“myEvent”,基类更改为QWidget,类名为Widget。 2.完成项目创建后,在设计模式向界面上拖入一个Push Button。 3.在widget.h文件添加鼠标按下事件处理函数声明: protected: void mousePressEvent(QMouseEvent*); 4.到widget.cpp文件中先添加头文件包含: #include 然后在下面添加函数的定义: void Widget::mousePressEvent(QMouseEvent*e) { ui->pushButton->setText(tr("(%1,%2)").arg(e->x()).arg(e->y())); } 这里的arg()里的参数分别用来填充%1和%2处的内容,arg()是QString类中的一个静态函数,使用它就可以在字符串中使用变量了。其中x()和y()分别用来返回鼠标光标所在位置的x和y坐标值。这样,当鼠标在界面上点击时,按钮就会显示出当前鼠标的坐标值。效果如下图所示。

VB事件大全集

Change事件 返回 示例应用于 指示一个控件的内容已经改变的。此事件如何和何时发生则随控件的不同而不同:ComboBox-改变控件的文本框部分的正文。该事件仅在Style 属性设 置为 0(下拉 Combo)或 1(简单 Combo)和正文被改变或者通过代码改 变了Text 属性的设置时才会发生。 DirListBox-改变所选择的目录。该事件在双击一个新的目录或通过代 码改变Path 属性的设置时发生。 DriveListBox-改变所选择的驱动器。该事件当选择一个新的驱动器或 通过代码改变Drive 属性的设置时发生。 HScrollBar 和VScrollBar(水平和垂直滚动条)-移动滚动条的滚动 框部分。该事件在进行滚动或通过代码改变Value 属性的设置时发生。 Label-改变Label 的内容。该事件在一个 DDE 链接更新数据或通过 代码改变Caption 属性的设置时发生。 PictureBox-改变PictureBox 的内容。该事件当一个 DDE 链接更新 数据或通过代码改变Picture属性的设置时发生。 TextBox-改变文本框的内容。该事件当一个 DDE 链接更新数据、用户 改变正文或通过代码改变Text 属性的设置时发生。 语法 Private Sub object_Change([index As Integer]) Change事件语法包括下列部分: 部分描述 object一个对象表达式,其值是“应用于”列表中的一个对象。 index一个整数,用来唯一地标识一个在控件数组中控件。 说明 Change事件过程可协调在各控件间显示的数据或使它们同步。例如,可用一个 滚动条的Change事件过程更新一个TextBox 控件中滚动条的Value 属性的 设置。或者可以利用Change事件过程在一个工作区里显示数据和公式,在另一 个区域里显示结果。 Change事件过程在更新系统控件(DirListBox,DriveListBox 和FileListBox)中的各属性时也是有用的。例如,可更新一个DirListBox 控件的Path 属性设置来反映一个DriveListBox 控件的Drive 属性设置的改变。 注意一个Change事件过程有时会导致一个层叠事件。这种情况在控件的Change事件过程改变该控件的内容时会发生,例如,通过用代码设置一个决定 该控件的值的属性,如对一个TextBox 控件的Text 属性之类的设置。为了避 免层叠事件:

VB_鼠标、键盘事件和ASCII码表

一、鼠标事件 Cilck:用户单击鼠标键时发生 DbLClick:用户双击鼠标键时发生 MouseDown:用户释放鼠标键时发生 MouseMove:移动鼠标时发生 二、键盘事件 KeyDown:在键按下时触发。(可获得一个KeyCode值) KeyUp:在键弹起时触发。(可获得一个KeyCode值) KeyPress:在键盘按下再弹起时发生。(它可获得KeyAscii值) 注: 1、既然有了KeyDown和KeyUp,为什么还要KeyPress事件,我将键盘按下去后,到底是触发了KeyPress事件,还是KeyDown或KeyUp事件?答案是,当我们按了一下键盘后,这三种事件都触发。 2、一般而言,大多数程序并不关心KeyDown事件来确定按下的键,KeyPress事件在触发后,能够获得一个KeyAscii值。它指键盘上的某个键与计算机ASCII码对应的值,如键“1”,KeyAscii为49;“A”,KeyAscii 为65;“Enter”,KeyAscii为13。当我们在KeyPress事件中将KeyAscii 的值改为0后,就等于禁止键入。 3、然而并不是所有键盘上的键都有其KeyAscii值,有时,我们程序要判断用户是否按了功能键,可要区别数字小键盘和常规数字键时,那么KeyAscii就无能为力了。此时可以考虑KEyDown和KeyUp事件,当用户击键后,它们能获得一个唯一的KeyCode值,从而判断用户到底按了键盘上的哪个键。可以说,键盘上大多数键(Tab、PrintScreen键除外),都有唯一的KeyCode序列号。

常用的 ASCII 码表(0-127)

相关主题