第8、9章键盘鼠标事件和图形操作.ppt

上传人:sccc 文档编号:5666492 上传时间:2023-08-07 格式:PPT 页数:66 大小:2.79MB
返回 下载 相关 举报
第8、9章键盘鼠标事件和图形操作.ppt_第1页
第1页 / 共66页
第8、9章键盘鼠标事件和图形操作.ppt_第2页
第2页 / 共66页
第8、9章键盘鼠标事件和图形操作.ppt_第3页
第3页 / 共66页
第8、9章键盘鼠标事件和图形操作.ppt_第4页
第4页 / 共66页
第8、9章键盘鼠标事件和图形操作.ppt_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《第8、9章键盘鼠标事件和图形操作.ppt》由会员分享,可在线阅读,更多相关《第8、9章键盘鼠标事件和图形操作.ppt(66页珍藏版)》请在三一办公上搜索。

1、第8章 鼠标和键盘事件,8.1 键盘事件8.2 鼠标事件8.3 应用,8.1 键盘事件,KeyPress事件:用户按下并且释放一个会产生ASCII码的键时被触发。KeyDown事件:用户按下键盘上任意一个键时被触发。KeyUp事件:用户释放键盘上任意一个键时被触发。,参数,KeyPress事件 Private Sub Form_KeyPress(KeyAscii As Integer)End Sub,参数KeyAscii是按键事件发生后,返回所按键的ASCII码值。,例:用窗体的KeyPress事件书写程序,判断按下的键是否为英文字母,如果是则输出,否则“响铃”。,Private Sub Te

2、xt1_KeyUp(KeyCode As Integer,Shift As Integer)End SubPrivate Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)End Sub,2.KeyDown 和 KeyUp 事件,KeyCode参数返回按键的扫描码。键盘上的每个键均有惟一的扫描码,此参数指示了按键的物理位置。如 A 与 a 是同一个键,故扫描码均为65。但是键盘上的“1”和数字小键盘的“1”就有不同的扫描码,尽管它们生成相同的字符。,Shift参数,判断是否在操作过程中按下了Shift、Ctrl和Alt键,以及以什么样的

3、组合(如果存在)按下这些键。,实际上Shift参数是一个三位二进制数:b2b1b0 b0=1 表示按下Shift键 b1=1 表示按下Ctrl键 b2=1 表示按下Alt键,如果按Shift键,则Shift为1;如果按 Ctrl键,则Shift为2;如果按Alt键,则Shift为4。应使用这些键值的总和来判断这些组合。例如,同时按下Shift和Alt键时Shift等于5(1+4)。,例如,创建一个工程,编写如下代码,实现在小写字母输入状态下,用Shift参数区分输入的字母是大写还是小写,并在窗体上输出相应的字母和KeyCode值。,Private Sub Form_KeyUp(KeyCode

4、As Integer,Shift As Integer)If KeyCode=Asc(A)And KeyCode=Asc(Z)Then If Shift=1 Then Print Chr(KeyCode);KeyCode Else Print LCase(Chr(KeyCode);KeyCode End If End IfEnd Sub,小技巧:一般来说,如果需要检测键盘输入的哪个字符,则选用KeyPress事件;如果需要检测所按的是哪个键,则选用KeyUp或KeyDown事件。,8.2 鼠标事件,MouseDown事件:按下任意鼠标按钮时发生。MouseUp事件:释放任意鼠标按钮时发生。Mo

5、useMove事件:每当鼠标指针移动到屏幕新位置时发生。,参数,Button是一个三位二进制数b2b1b0,描述鼠标按钮的状态:b0=1表示左键按下或释放 b1=1表示右键按下或释放 b2=1表示中键按下或释放(目前几乎见不到有中键的鼠标器),Shift参数,反映用户在按下鼠标键的同时,按了Shift、Ctrl、Alt这三个控制键中的哪一个键或它们的哪一种组合。,x,y表示鼠标指针的位置,这里用到了接受鼠标事件的对象的坐标系统描述的鼠标指针位置。,例:编写程序,在鼠标左键单击窗体位置显示彩色的“*”,如图所示,当鼠标右键单击窗体时清除窗体信息。,Private Sub Form_MouseDo

6、wn(Button As Integer,Shift As Integer,X As Single,Y As Single)If Button=1 Then 按下左键则输出*CurrentX=X CurrentY=Y ForeColor=QBColor(Rnd*16)Print*Else Cls End IfEnd Sub,第九章 图形操作,9.1 图形操作基础9.2 绘图属性9.3 图形方法9.4 图形方法应用9.5 图形控件,9.1 图形操作基础,9.1.1 坐标系统,1坐标的概念,2坐标刻度与单位 使用缺省刻度单位选择标准刻度单位,ScaleMode属性设置值,9.1.2 自定义坐标系统

7、,1用坐标属性定义坐标系统 可以使用对象的ScaleLeft、ScaleTop、ScaleWidth 和 ScaleHeight 四个属性,来创建自定义坐标。例:通过坐标属性定义窗体Form1的坐标系。,例:如果窗体Froml左上角坐标为(-200,250),右下角坐标为(300,-150)。则x轴和y轴的正向分别为()A.向右、向下 B.向左、向上 C.向右、向上 D.向左、向下,2使用坐标方法定义坐标系统 使用Scale方法定义坐标系统的格式:对象名.Scale(x1,y1)(x2,y2)例:通过使用Scale方法义窗体Form1的坐标系。,返回,9.2 绘图属性,9.2.1 当前坐标,图

8、形输出对象的当前坐标CurrentX、CurrentY 属性用于返回或设置在窗体或图片框中,下一次打印或绘图方法的水平(CurrentX)和垂直(CurrentY)坐标。,9.2.2 线宽,对象名.DrawWidth=size,9.2.3 线型,对象名.DrawStyle=number,FillColor指定填充的颜色,默认的填充颜色与输出对象的ForeColor相同。FillSytle属性指定填充的图案。,9.2.4 填充,9.2.5 颜色,1颜色属性BackColor属性 ForeColor属性 BorderColor属性 FillColor属性,2.颜色函数与颜色整数使用颜色函数RGB和

9、QBColor,还可以直接使用十进制整数或十六进制整数,返回,可以用&HBBGGRR形式的6位十六进制数或十进制整数描述颜色。十六进制数的左边应加字母H,按照三基色原理,从最低字节到最高字节依次决定红(RR)、绿(GG)和蓝(BB)的量。红、绿和蓝的量分别由一个介于0255(&H00&HFF)之间的数来表示。表示RGB颜色的十进制数值的取值范围0(&HO00000)16,777,215(&HFFFFFF)。例如:&060000表示深绿色。,可以使用系统提供的描述颜色的常量。vbBlack&H0 黑色 vbRed&HFF 红色 vbGreen&HFF00 绿色 vbYellow&HFFFF 黄色

10、 vbBlue&HFF0000 蓝色 vbMagenta&HFF00FF 洋红 vbCyan&HFFFF00 青色 vbWhite&HFFFFFF 白色,使用RGB(r,g,b)函数。RGB(255,0,O)表示红色 RGB(0,255,0)表示绿色 RGB(O,O,255)表示蓝色 RGB(255,255,0)表示黄色 RGB(255,0,255)表示紫色 RGB(0,255,255)表示青色 RGB(O,O,O)表示黑色 RGB(255,255,255)表示白色,使用QBColor()函数。,9.3 图形方法,9.3.1 Line方法,Line方法用于在对象上画直线和矩形。其使用语法格式为

11、:对象名.Line Step(x1,y1)-Step(x2,y2),color,BF,例:使用Line方法画三角形、矩形框和矩形块。,9.3.2 Circle方法,Circle方法用于在对象上画圆、椭圆、弧或扇形,其语法格式为:,对象名.CircleStep(x,y),半径,color,start,end,aspect,例:使用Circle方法画扇形、画圆、画椭圆。,9.3.3 PSet方法,Pset方法用于在对象上的指定位置,按指定颜色画点。语法格式为:对象名.PSet Step(x,y),color,返回,例:利用参数方程画正弦曲线。,例:下面程序运行后输出的图形是()Private Su

12、b Form_Click()Const angle=3.14159/180 For I=0 To 360 Step 30 X1=1000+900*Cos(angle*I)Y1=1000+900*Sin(angle*I)X2=1000+500*Cos(angle*I)Y2=1000+500*Sin(angle*I)Line(X1,Y1)-(X2,Y2)Circle(1000,1000),480 Next IEnd Sub,例:运行下面程序后,按命令按钮Command1,在窗体上显示的结果是:Private Sub Command1_Click()For k=1 To 10 Col=Int(Rnd

13、*16)Rad=Int(Rnd*1000+100)Circle(2000,1500),Rad,QBColor(Col)Next k End Sub10个半径不同,颜色相同,圆心位置相同的圆 B.10个半径相同,颜色不同,圆心位置相同的圆C.10个半径不同,颜色不同,圆心位置相同的圆 D.10个半径不同,颜色不同,圆心位置不同的圆,例:下列程序运行后,窗体上显示的图形为()Private Sub Form_Click()Dim CenterX As Integer,CenterY As Integer CenterX=Form1.ScaleWidth/2 CenterY=Form1.ScaleH

14、eight/2 PSet(0,CenterY)For i=1 To 10 Line-Step(500,-500)Line-Step(0,500)Next i End Sub,A,B,C,D,9.4 图形方法应用,9.4.1 几何形绘制,例:书写程序显示如图所示的图形。,9.4.2 应用鼠标绘图,9.4.2.1 鼠标事件,MouseDown事件:按下任意鼠标按钮时发生。MouseUp事件:释放任意鼠标按钮时发生。MouseMove事件:每当鼠标指针移动到屏幕新位置时发生。,例 在窗体上按下鼠标左键并拖动,画出自由曲线如图所示,鼠标左键释放时停止画线,并在画线终点与起点之间自动画出连线,形成封闭区

15、域。按下鼠标右键则清除窗体上内容。,9.5 图形控件,9.5.1 PictureBox(图片框),9.5.2 Image(图像框),9.5.3 Line直线控件,1常用属性BorderStyle属性 BorderColor属性BorderWidth属性X1,X2,Y1,Y2属性,2使用直线控件 使用Line控件在窗体、图片框和框架上,用鼠标拖动绘制直线。,9.5.4 Shape形状控件,1常用属性Shape属性:设置Shape控件的外观。,BorderColor属性:用于设置边框颜色。BorderStyle属性:用于设置边框线 型,其设置值与Line控件相同。BorderWidth属性:用于设置边框线宽。,例:显示形状控件的6种图形。,返回,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号