第十课:记录鼠标轨迹
学习目标:
1.了解什么是事件。
2.掌握编写响应鼠标事件的程序的方法。
教学重难点:
1、重点:掌握编写响应鼠标事件的程序的方法。
2、难点:理解什么是事件。
编写程序:通过我们移动和点击鼠标来画图。
程序如下:
r=10
GraphicsWindow.MouseDown = OnMD
GraphicsWindow.MouseMove = OnMM
Sub OnMD
? x = GraphicsWindow.MouseX
? y = GraphicsWindow.MouseY
? GraphicsWindow.FillEllipse(x-r, y-r, 2*r, 2*r)
EndSub
Sub onMM
? GraphicsWindow.BrushColor=GraphicsWindow.GetRandomColor()21教育网
? x=GraphicsWindow.MouseX
? y=GraphicsWindow.MouseY
? GraphicsWindow.FillEllipse(x-2,y-2,4,4)
EndSub
一、事件与交互
1、OnMD和OnMM都是子程序,主程序中调用子程序的命令是:
GraphicsWindow.MouseDown?=?OnMD(鼠标按下时响应)
GraphicsWindow.MouseMove?=?OnMM(鼠标移动时响应)
2、GraphicsWindow对象能侦测的6个事件:
KeyDown 【事件】当键盘上的按键被按下时触发。
KeyUp 【事件】当键盘上的按键被释放时触发。
MouseDown 【事件】当鼠标键被按下时触发。
MouseMove 【事件】当鼠标被移动时触发。
MouseUp 【事件】当鼠标键被释放时触发。
TextInput 【事件】当文本被输入GraphicsWindow时触发。
3、注意区分
(1)主程序直接调用子程序
子程序名()
(2)通过事件指定子程序
对象.事件=子程序名()
4、练习:
GraphicsWindow.MouseDown = OnMD
Sub OnMD
? ?GraphicsWindow.ShowMessage("你按下了鼠标","试测件事")
EndSub
GraphicsWindow.ShowMessage作用是显示消息框。
二、记录鼠标轨迹
1、编写程序,当按下鼠标(或按下键盘上的键、或移动鼠标)时,窗口的背景色随机改变。
程序如下:
GraphicsWindow.MouseDown = OnMD
Sub OnMD
? ? GraphicsWindow.BackgroundColor=GraphicsWindow.GetRandomColor()
EndSub
将GraphicsWindow对象的事件改为KeyDown或MouseMove,可以得到相应的事件驱动程序。21世纪教育网版权所有
2、编写统计鼠标按下事件的程序。
程序如下:
i=0
GraphicsWindow.MouseDown = OnMD
Sub OnMD
? ? ?i=i+1
? ? ?GraphicsWindow.ShowMessage("你按下"+计"次鼠标","测试事件")21cnjy.com
EndSub
3、编写程序,用鼠标可以画图形
GraphicsWindow.MouseMove=onMouseMove
GraphicsWindow.MouseDown=onMouseDown
Sub onMouseDown
? prevX=Graphicswindow.MouseX
? prevY=Graphicswindow.MouseY
EndSub
Sub onMouseMove
? x=graphicswindow.MouseX
? y=graphicswindow.MouseY
? If Mouse.IsLeftButtonDown Then
? ? ? ?GraphicsWindow.DrawLine(prevX,prevY,x,y)
? EndIf
? prevX=x
? prevY=y
EndSub