欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    VB程序界面设计.ppt

    • 资源ID:2817203       资源大小:1.36MB        全文页数:81页
    • 资源格式: PPT        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    VB程序界面设计.ppt

    第5章 界面设计,学习目标:掌握窗体设计 掌握标准控件的应用 掌握多重窗体的设计与应用 掌握响应鼠标与键盘事件 掌握菜单的设计与应用,第5章 界面设计,教学内容:5.1 窗体与控件应用基础 5.2 常用标准控件及应用案例 5.3 多窗体程序的设计与应用 5.4 VB工程管理 5.5 鼠标与键盘事件 5.6 菜单的设计与应用,5.1 应用基础控件的基本操作,1.在窗体上添加控件 单击工具箱中的图标,在窗体上拖放出所需控件 双击工具箱中的图标(窗体中央出现一个缺省大小的控件),根据需要移动控件或更改控件的大小。2.选中窗体上的控件 选中一个控件:单击选中多个控件:Ctrl或Shift+单击用鼠标拖放出一个矩形框,返回目录,5.1 应用基础控件的基本操作,3.改变控件大小 拖动选中控件四周的8个控制点修改Width和Height的属性值 4.删除、移动控件 删除:选中后按Delete键 移动:拖动选中的控件修改Top和Left的属性值,返回目录,5.1 应用基础控件的基本操作,5.复制控件 选中控件“复制”“粘贴”,返回目录,控件数组由一组相同类型的控件组成,名称(Name属性)、属性和事件过程都相同。通过Index 属性可区分控件数组中的元素。如果要从控件数组中撤消一个控件,需改变该控件的Name属性设置,并删除Index属性设置。,5.1 应用基础窗体和控件的常用属性,返回目录,5.1 应用基础窗体的属性、事件与方法,1.窗体的属性 除Name、Caption、Font、Enabled、Visible、BackColor、ForeColor、FillColor属性,常用属性还有:Appearance:设置窗体运行时是否以3D效果显示 BorderStyle:设置窗体的边框样式 ControlBox:设置窗口是否显示控制菜单按钮 Icon:设置窗体最小化时显示的图标 Height/Width:决定窗体的初始大小 Left/Top:根据屏幕的左上角确定窗体的位置 MaxButton/MinButton:是否具有“最大化”/“最小化”按钮 ShowInTaskbar:窗体运行时是否出现在任务栏中,返回目录,5.1 应用基础窗体的属性、事件与方法,2.窗体的常用事件Load/Unload:装入/卸载Click:单击Activate/Deactivate:激活/非激活Resize:尺寸改变Initialize:初始化(在Load事件后发生)KeyPress:按键 MouseDown/MouseUp/MouseOver:鼠标按下/松开/移动,返回目录,例如,当A窗体变成活动窗体时,A窗体发生Activate事件;当另一个窗体被激活时,A窗体发生Deactivate事件。,5.1 应用基础窗体的属性、事件与方法,3.窗体的常用方法 方法:对象要完成的操作(特殊子程序)调用格式:对象名称.Print:打印文本Show:显示窗体Hide:隐藏窗体(不是卸载)Cls:清除运行时窗体中生成的图形和文本,返回目录,5.2 常用标准控件1,标准控件由系统提供,又称为内部控件。1.命令按钮-1 Caption属性:设置显示在按钮上的文本(标题),返回目录,快捷键作用:Alt+S 单击“开始”按钮Alt+X 单击“Exit”按钮,5.2 常用标准控件1,1.命令按钮-2 Default属性:设置缺省的命令按钮。若设置为True,按回车键相当于单击该按钮。Cancel属性:设置缺省的取消按钮。若设置为True,按Esc键相当于单击该按钮。Index属性:设置按钮在控件数组中的编号。命令按钮的默认事件是Click(单击),不支持双击事件。,返回目录,5.2 常用标准控件1,2.标签 Caption属性:设置在标签控件中显示的文本Alignment属性:设置标签中文本的对齐方式(0-左对齐,1-右对齐,2-居中)BackStyle属性:设置标签控件背景是否透明(0-透明,1-不透明),返回目录,例,标签“用户名称”和“密码”是透明的,标签控件主要用来显示说明文字,因此一般不对其进事件处理。,5.2 常用标准控件1,3.文本框-常用属性 Text:设置文本框中显示的内容 MultiLines:设置是否能输入或显示多行文本 取值True或 False(缺省值)ScrollBars:设置多行文本框中是否出现滚动条(0-没有,1-水平,2-垂直,3-水平和垂直)Locked:设置是否允许用户编辑文本框中的文本 取值True或 False(缺省值)Passwordchar:设置密码字符 若MultiLine属性为True,则PasswordChar属性无效,返回目录,5.2 常用标准控件1,3.文本框-常用事件 Change(默认事件):改变文本框内容时发生KeyPress:在文本框中按键盘上的键时发生 Lostfocus:文本框失去焦点时发生Gotfocus:文本框获得焦点时发生 焦点是接收用户鼠标或键盘输入的能力。4.框架可用于对其他控件进行分组常用属性是Caption,用于设置框架的标题文本可先画出框架,再将其它控件画到框架中;或者“剪切”框架外的控件,“粘贴”到框架中,返回目录,5.2 常用标准控件1,例5.1 彩票开奖器 Private Sub Command1_Click(Index As Integer)Command1(Index).Enabled=False 使点击过的按钮不可用 Randomize(Time)Label1(Index).Caption=Int(Rnd*10)对应标签显示随机数 Label1(Index).FontSize=24 Label1(Index).ForeColor=RGB(255,0,0)End Sub,返回目录,5.2 常用标准控件1,例5.1 彩票开奖器 Private Sub Cmd_Redo_Click()点击ReDo按钮 For i=0 To 3 Command1(i).Enabled=True Label1(i).Caption=Next iEnd SubPrivate Sub Cmd_Exit_Click()点击Exit按钮 EndEnd Sub,返回目录,5.2 常用标准控件1,例5.2 同步显示 Private Sub Text1_Change()Text2.Text=Text1.TextEnd SubPrivate Sub Command1_Click()重新输入 Text1.Text=Text1.SetFocusEnd Sub,返回目录,两个文本框:MultiLine设为True ScrollBars设为2,5.2 常用标准控件1,例5.3 考生登录If Len(Txtcode.Text)8 Then Lblsm.Caption=准考证号必须输入,长度8位!Txtcode.SetFocusElseIf Len(Txtname.Text)=0 Then Lblsm.Caption=考生姓名必须输入 Txtname.SetFocus:Exit SubElseIf Len(TxtSeat.Text)=0 Then Lblsm.Caption=座位号必须输入 TxtSeat.SetFocus:Exit SubEnd IfLblsm.Caption=:MsgBox 正确,返回目录,“正确无误”按钮的Click事件响应代码:各项信息均正确输入后弹出一信息框。,5.2 常用标准控件1,例5.3 考生登录Private Sub Txtcode_LostFocus()If Len(Txtcode.Text)8 Then Lblsm.Caption=准考证号必须输入,长度8位!Txtcode.SetFocus ElseIf Not IsNumeric(Txtcode.Text)Then Lblsm.Caption=准考证号必须是数字!Txtcode.SetFocus Else Lblsm.Caption=End IfEnd Sub,返回目录,“准考证号”文本框失去焦点时的事件响应代码:检查是否输入8位数字。,IsNumeric()是判断数字函数,5.2 常用标准控件1,例5.3 考生登录Private Sub Txtname_LostFocus()If Len(Txtcode.Text)8 Or Not IsNumeric(Txtcode.Text)Then Txtcode.SetFocus ElseIf Len(Txtname.Text)=0 Then Lblsm.Caption=考生姓名必须输入!Txtname.SetFocus Else Lblsm.Caption=End IfEnd Sub,返回目录,“姓名”文本框失去焦点时的事件响应代码:检查姓名是否输入。,5.2 常用标准控件1,例5.3 考生登录Private Sub TxtSeat_LostFocus()If Len(Txtname.Text)=0 Then Txtname.SetFocus ElseIf Len(TxtSeat.Text)=0 Then Lblsm.Caption=座位号必须输入!TxtSeat.SetFocus ElseIf Not IsNumeric(TxtSeat.Text)Then Lblsm.Caption=座位号必须是数字 TxtSeat.SetFocus Else Lblsm.Caption=End IfEnd Sub,返回目录,“座位号”文本框失去焦点时的事件响应代码:检查座位号是否输入,是否是数字。,5.2 常用标准控件2,1.单选按钮 常用属性是Caption和Value。Value属性表示控件的状态,缺省值为False(未被选中)。常用事件是Click 缺省时,直接放到窗体上的所有单选按钮自动构成一组。2.复选框常用属性是Caption和Value。Value属性表示控件的状态:0-未被选中(缺省值),1-选定 2 灰色复选框的主要事件也是Click,返回目录,5.2 常用标准控件2,3.滚动条 和 Value属性:滚动框在滚动条中的当前位置 Max和Min属性:Value的最大值和最小值。Max的缺省值为32767,Min的缺省值为0 LargeChange和SmallChange:滚动条的主要事件是:Change:滚动框的位置改变时发生 Scroll:在拖动滚动条上的滚动框时发生,返回目录,5.2 常用标准控件2,4.定时器 定时器是应用程序中控制定时发生事件的控件。常用属性:Enabled:设置定时器是否可用,缺省为True Interval:设置定时器事件之间所间隔的毫秒数,缺省值为0(Timer控件无效),最大为65535 事件:Timer:以Interval属性指定的时间间隔发生(Enabled属性设置为True)注:定时器控件只在设计时出现在窗体上,返回目录,5.2 常用标准控件2,例5.4 简易计算器 Private Sub Command1_Click()计算 a=Val(Text1.Text):b=Val(Text2.Text)If Option1 Then Text3.Text=a+b If Option2 Then Text3.Text=a-b If Option3 Then Text3.Text=a*b If Option4 Then Text3.Text=a/b 思考:b=0怎么办?End SubPrivate Sub Command2_Click()清除 Text1.Text=:Text2.Text=:Text3.Text=End Sub,返回目录,5.2 常用标准控件2,例5.4 简易计算器,返回目录,设置是否斜体显示,设置是否粗体显示,5.2 常用标准控件2,例5.5 求阶乘,返回目录,5.2 常用标准控件2,例5.5 求阶乘Private Sub Timer1_Timer()n=HScroll1.Value:nj=1 For i=1 To n 该循环计算 n!nj=nj*i Next Cls:Form1.FontSize=18 Label1.Caption=Str(n)+!=:Label2.Caption=nj If HScroll1.Value 20 Then HScroll1.Value=HScroll1.Value+1 Else HScroll1.Value=1 End IfEnd Sub,返回目录,Private Sub Command1_Click()Timer1.Enabled=TrueEnd Sub,Private Sub Command2_Click()Timer1.Enabled=FalseEnd Sub,5.2 常用标准控件3,1.列表框 常用特定属性List:项目数组引用形式:列表框名称.List(index)第1项的index为0,最后一项的index为ListCount-1ListCount:项目个数ListIndex:当前所选项目的索引号第1项为0,最后一项为ListCount-1Sorted:是否按字母顺序排序(默认false)常用事件:Click、DblClick,返回目录,5.2 常用标准控件3,1.列表框 常用方法AddItem:将项目添加到列表框。列表框名称.AddItem item,index item:项目的字符串表达式 index:插入新项目的位置RemoveItem:从列表框中删除项目 列表框名称.RemoveItem index index:指定删除的项目位置序号Clear:删除列表框中的所有项目 列表框名称.Clear,返回目录,5.2 常用标准控件3,2.组合框 组合框文本框列表框常用属性、事件和方法与列表框相同 设置Style属性,可决定组合框的样式(三种):0:下拉式组合框(缺省值)含文本框和下拉式列表1:简单组合框 含文本框和不能下拉的列表 界面设计时须将控件绘制得大一些)2:下拉式列表框 仅允许从下拉式列表中选择项目,返回目录,5.2 常用标准控件3,例5.6 对列表框中的项目进行添加、删除和统计 设计界面:姓名文本框:TextXM显示当前人数的标签:Label2“添加”按钮:CommandAdd Default属性为True“删除”按钮:CommandDelete Enabled属性为False列表框:List1,返回目录,5.2 常用标准控件3,例5.6 对列表框中的项目进行添加、删除和统计 Private Sub CommandAdd_Click()单击“添加”按钮 If TextXM.Text Then List1.AddItem TextXM.Text Label2.Caption=List1.ListCount 显示当前人数 TextXM.Text=End If TextXM.SetFocusEnd Sub,返回目录,5.2 常用标准控件3,例5.6 对列表框中的项目进行添加、删除和统计 Private Sub List1_Click()单击列表框中的项目 CommandDelete.Enabled=True 使“删除”按钮可用End SubPrivate Sub CommandDelete_Click()单击“删除”按钮 I=List1.ListIndex 获得当前所选项目的索引号 List1.RemoveItem I Label2.Caption=List1.ListCount CommandDelete.Enabled=False End Sub,返回目录,5.2 常用标准控件3,例5.7 显示、新增、删除、清空学生记录 设计界面:学号文本框:Txt_id姓名文本框:Txt_xm班级文本框:Txt_bj学生记录列表框:Lst_data“新增”按钮:Cmd_add Default属性为True“删除”按钮:Cmd_dele“清空”按钮:Cmd_clear,返回目录,5.2 常用标准控件3,例5.7 显示、新增、删除、清空学生记录“通用”段声明自定义数据类型及模块级变量 Private Type student id As String*6 xm As String bj As String End Type Dim stud(50)As student Dim num As Integer Private Sub Form_Load()num=0 统计记录数 Cmd_dele.Enabled=False End Sub,返回目录,5.2 常用标准控件3,例5.7 显示、新增、删除、清空学生记录 Private Sub Cmd_add_Click()单击“新增”按钮 Lst_data.AddItem Txt_id+Space(5)+Txt_xm+Space(5)+Txt_bj num=num+1 定义类型的变量,通过变量名.成员名访问变量中的成员 With stud(num).id=Txt_id.Text.xm=Txt_xm.Text.bj=Txt_bj.Text End With If num 0 Then Cmd_dele.Enabled=True Txt_id.SetFocus Txt_id=:Txt_xm=:Txt_bj=End Sub,返回目录,5.2 常用标准控件3,例5.7 显示、新增、删除、清空学生记录 Private Sub Cmd_dele_Click()单击“删除”按钮 Dim n As Integer Lst_data.RemoveItem Lst_data.ListIndex For n=Lst_data.ListIndex+1 To num-1 移位覆盖 stud(n).id=stud(n+1).id stud(n).xm=stud(n+1).xm stud(n).bj=stud(n+1).bj Next num=num-1 记录总数-1 If num=0 Then Cmd_dele.Enabled=False Txt_id=:Txt_xm=:Txt_bj=End Sub,返回目录,5.2 常用标准控件3,例5.7 显示、新增、删除、清空学生记录 Private Sub Cmd_clear_Click()单击“清空”按钮 Txt_id=:Txt_xm=:Txt_bj=Txt_id.SetFocusEnd SubPrivate Sub Lst_data_Click()单击列表框项目 Dim n As Integer n=Lst_data.ListIndex With stud(n+1)Txt_id.Text=.id Txt_xm.Text=.xm Txt_bj.Text=.bj End WithEnd Sub,返回目录,5.2 常用标准控件4,1.图片框和图像框(1)图片框(PictureBox)和图像控件(Image)的异同 都能用来显示图形或图片:位图(.bmp)、图标(.ico)、图元(.wmf)、JPEG或GIF等 主要区别:图片框中可以包含其它控件,而图像框不能。图片框可支持各种图形方法和打印方法,而图像框不能。图像框比图片框占用的内存少,显示速度快。,返回目录,5.2 常用标准控件4,(2)将图片加载到窗体、图片框或图像框中 窗体设计时设置Picture属性或“复制”/“剪切”图像“粘贴”如果要取消图片,将Picture属性重新设置为(None)程序代码中 用LoadPicture函数,例如:Form1.Picture=LoadPicture(C:windowsbackgrnd.gif)Form1.Picture=LoadPicture()清除图片复制其它对象的图片,例如:Picture1.Picture=Image1.Picture,返回目录,5.2 常用标准控件4,(3)调整图片大小图片框:AutoSize属性设置控件是否按装入的图片大小自动调整尺寸,缺省值False。但图元文件(.wmf)例外,AutoSize为False时,装入的图形会自动调整大小以适应图片框。图像框:Stretch属性为False(缺省值),控件自动调整大小以适应装载的图形的尺寸;Stretch属性为True,则加载的图形自动调整大小以适应控件,即,调整图像框可实现图形的放大和缩小。窗体:不随装载的图片大小而自动改变,图片大于窗体的部分将被裁剪掉。,返回目录,5.2 常用标准控件4,(4)控件的边框样式 BordeStyle属性:0(无边框)、1(有边框)图片框:BordeStyle属性缺省值为1 图像框:BordeStyle属性缺省值为0,返回目录,5.2 常用标准控件4,例5.8 图片框和图像框应用示例 Image1的属性设置:Stretch为TrueBordeStyle为1Height和Width均为1800 在窗体的通用段声明模块变量:Dim n As Integer n记录图片框中的输出项数 Private Sub Form_Load()n=0 n赋初值 End Sub,返回目录,5.2 常用标准控件4,单击“放大”按钮Private Sub Command1_Click()Image1.Width=Image1.Width*1.25 Image1.Height=Image1.Height*1.25 Picture1.Print 放大图片:n=n+1 If n=10 Then Picture1.Cls:n=0End Sub单击“缩小”按钮Private Sub Command2_Click()Image1.Width=Image1.Width*0.75 Image1.Height=Image1.Height*0.75 Picture1.Print 缩小图片:n=n+1 If n=10 Then Picture1.Cls:n=0End Sub,返回目录,5.2 常用标准控件4,Private Sub Command3_Click()单击“还原”按钮 Picture1.Cls Image1.Height=1800 Image1.Width=1800End Sub,返回目录,5.2 常用标准控件4,2.直线控件 功能:在窗体、框架或图片框中绘制线条 移动和调整线条大小 设置X1、X2、Y1、Y2属性 其中,X1、Y1左端点坐标,X2、Y2右端点坐标 设置线条的颜色和样式 设置BoderColor和BordeStyle属性 注意:若BorderStyle=0,BorderColor属性不起作用 设置线条的宽度 设置BorderWidth属性 object.Line Step(x1,y1)Step-(x2,y2),color,BF,返回目录,5.2 常用标准控件4,3.形状控件 功能:在窗体上绘制有规则的图形 Shape属性设置控件的具体形状,返回目录,5.2 常用标准控件5,执行“工程部件”命令可添加其他外部控件 例5.9 DTPicker控件应用(1)添加DTPicker控件:,返回目录,5.2 常用标准控件5,例5.9 DTPicker控件应用(2)窗体设计:(3)“输出”按钮的Click事件过程:Private Sub Command1_Click()MsgBox 你的订票日期是&DTPicker1.Value,输出 End Sub,返回目录,5.3 多窗体程序的设计与应用,1.添加窗体“工程添加窗体”2.显示或隐藏窗体 显示指定窗体 Object.Show Style Object窗体名称 Style显示模式(0、1)隐藏指定窗体 Object.Hide,返回目录,0:无模式,可以响应其它对象的输入1:模式窗体,必须隐藏或卸载才响应其它窗体的请求,5.3 多窗体程序的设计与应用,3.设置启动窗体默认第一个窗体(Form1)为启动窗体改变启动窗体:“工程工程属性”,返回目录,5.3 多窗体程序的设计与应用,4.应用案例:设计试题库管理程序ctk.vbp的初步框架,返回目录,5.3 多窗体程序的设计与应用,(1)创建用户登录窗体Frmdl 新建工程:窗体保存为Frmdl.frm,工程保存为ctk.vbp。窗体设计:下面4个按钮为一控件数组Cmdml(0)Cmdml(3)除“退出”按钮外,其它三个按钮的Enabled属性设为False密码文本框Txtcode的PasswordChar属性设为“*”底部提示标签Lblsm的Caption属性设为空,返回目录,5.3 多窗体程序的设计与应用,程序设计:Dim cs As Integer cs记录出错次数Private Sub Cmdml_Click(Index As Integer)Select Case Index Case 0:单击题库管理按钮 Frmsele.Show 1 Case 1:单击自动选题按钮 Frmxt.Show 1 Case 2:单击制作考盘按钮 Frmcopy.Show 1 Case 3:单击退出按钮 End End SelectEnd Sub,返回目录,控件数组按钮的Click事件响应代码:点击后可打开相应的窗体,5.3 多窗体程序的设计与应用,Private Sub Cmgqd_Click()单击“确定”按钮 If cs TEACHER Then Lblsm.Caption=用户名错误,请重新输入!cs=cs+1:TxtName.SetFocus ElseIf(Txtcode.Text)kaoshi Then Lblsm.Caption=密码错误,请重新输入!cs=cs+1:Txtcode.SetFocus Else 用户名和密码均正确的情况 Lblsm.Caption=:Cmdml(0).Enabled=True Cmdml(1).Enabled=True:Cmdml(2).Enabled=True End If Else Lblsm.Caption=已连错三次,请退出!:Cmdml(3).SetFocus End IfEnd Sub,返回目录,5.3 多窗体程序的设计与应用,(2)添加题库管理窗体Frmsele“工程添加窗体”,新建一个窗体,保存为Frmsele.frm。在该窗体中添加一个命令按钮,编写Click事件响应代码:Private Sub Cmd_exit_Click()Unload Me End Sub(3)仿上,添加窗体Frmxz.frm(4)仿上,添加窗体Frmcopy.frm,返回目录,5.4 VB工程管理工程的组成,VB工程包含多种类型的文件 其中最常用的文件是:工程文件 包含与该工程有关的全部文件、对象以及所设置的环境选项的信息(见教材图5-30),扩展名.vbp 窗体文件 包含窗体及其控件有关属性的文本描述、常量或变量的声明、以及窗体内的过程代码等,扩展名为.frm 若窗体中对象的数据含有二进制属性,保存该窗体时将自动生成同名的二进制数据文件,扩展名为.frx 标准模块文件 通常用来定义供其他窗体或模块引用的全局常量、变量、过程等,扩展名为.bas,返回目录,5.4 VB工程管理工程的基本操作,1.新建、打开和保存工程新建工程启动VB时:“新建工程”对话框的“新建”选项卡VB窗口中:“文件新建工程”打开工程启动VB时:“现存”、“新建”VB窗口中:“文件打开工程”保存工程单击“保存工程”按钮“文件保存工程”“文件工程另存为”,返回目录,5.4 VB工程管理工程的基本操作,2.工程中添加、移除和保存文件 添加指定类型的文件:“工程添加”删除选定的文件:“工程移除”保存选定的文件:“文件保存”另存选定的文件:“文件另存为”注:上述操作可用快捷菜单中的相关命令在当前工程中添加现存的文件时(例如,添加其他工程中的窗体),并不是添加该文件的副本,而只是简单地在工程中包含对该文件的引用。,返回目录,5.5 鼠标与键盘事件鼠标事件,1.三个基本的鼠标事件 MouseDown、MouseUp、MouseMove MouseDown和MouseUp Private Sub 对象名称_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)Private Sub 对象名称_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)其中:Button:返回一个整数(1左(位0)、2右(位1)、4中(位2)Shift:返回一个整数(1-Shift键(位0)、2-Ctrl键(位1)、4-Alt键(位2)X、Y:返回当前鼠标指针的水平坐标和垂直坐标,返回目录,5.5 鼠标与键盘事件鼠标事件,例5.10 用Move方法移动窗体上的图片:窗体上按下左键,图片框的左上角移到当前鼠标指针所在位置;按下右键,则图片框的中心移到当前鼠标指针所在位置。Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)If Button=1 Then 按下左键 Picture1.Move X,Y End If If Button=2 Then 按下右键 Picture1.Move(X-Picture1.Width/2),(Y-Picture1.Height/2)End IfEnd Sub,返回目录,5.5 鼠标与键盘事件鼠标事件,MouseMove Private Sub对象名称_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)除Button参数(见教材表5.5),其余参数的含义与MouseDown和MouseUp的相同 例5.11让图片框中的文本框跟随鼠标指针移动 Private Sub Picture1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)Text1.Text=&X&,&Y 显示当前鼠标位置 Text1.Left=X Text1.Top=YEnd Sub,返回目录,5.5 鼠标与键盘事件鼠标事件,2.拖放操作(DragDrop)若干术语 Drag:按下鼠标按钮并移动对象的操作 Drop:到达目的地后释放鼠标按钮的操作 源:被拖动的对象 目标:是源控件放下或经过的对象只有目标对象能响应DragDrop或DragOver事件,返回目录,5.5 鼠标与键盘事件鼠标事件,DragMode属性:设置拖动模式DragMode=1(vbAutomatic),自动模式,鼠标拖动DragMode=0(vbManual),手工模式,程序中启动 DragDrop事件 拖动一个控件到目的位置并释放鼠标按钮时,在目标对象上(不是被拖的对象)触发DragDrop事件Private Sub 对象名称_DragDrop(Source As Control,X As Single,Y As Single)其中,Source代表被拖动的控件,X和Y表示鼠标指针的当前坐标位置。,返回目录,5.5 鼠标与键盘事件鼠标事件,DragOver事件 拖动控件时,在目标对象上触发DragOver事件 Private Sub Form_DragOver(Source As Control,X As Single,Y As Single,State As Single)其中,Source、X和Y参数的含义同DragDrop事件,State参数表示被拖控件与目标对象之间的相对位置关系 Drag方法 用于启动或停止手工拖动:对象.Drag,返回目录,5.5 鼠标与键盘事件鼠标事件,例5.12 实现在窗体上随意拖动图片框或文本框 Private Sub Form_Load()Picture1.DragMode=1 设置图片框控件为自动拖动模式 Text1.DragMode=1 设置文本框控件为自动拖动模式End SubPrivate Sub Form_DragDrop(Source As Control,X As Single,Y As Single)Source.Move X,Y 将源控件移到鼠标指针所指新位置End Sub,返回目录,5.5 鼠标与键盘事件键盘事件,1.KeyPress事件 按下键盘上与ASCII字符对应的键时触发KeyPress事件 Private Sub 对象名称_KeyPress(KeyAscii As Integer)参数KeyAscii返回按键的ASCII代码值KeyAscii设为0,则对象无法接收用户的输入例如,以下的事件过程只允许在Text1中输入数字字符09 Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii 57 Then KeyAscii=0 0为 End IfEnd Sub,返回目录,5.5 鼠标与键盘事件键盘事件,2.KeyDown和KeyUp事件 在按下/释放键时触发 Private Sub对象名称_KeyDown(KeyCode As Integer,Shift As Integer)Private Sub对象名称_KeyUp(KeyCode As Integer,Shift As Integer)KeyCode参数返回所按物理键的代码值;Shift参数返回一个整数值,指示Shift、Ctrl和Alt键的状态 KeyPress事件与KeyDown/KeyUp事件的区别 前者返回的是字符的ASCII码,后者返回的是“键”的代码 例如,当按“A”和“a”时将返回同一个KeyCode值,而对KeyPress来说,按“A”和“a”得到的ASCII码是不一样的,返回目录,vbKeyA 65,“A”65“a”97,5.5 鼠标与键盘事件键盘事件,例5.13 模拟打字机Private Sub Form_Load()Form1.KeyPreview=TrueEnd Sub 使窗体优先响应键盘事件Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer)If KeyCode=vbKeyC And Shift=2 Then Unload MeEnd Sub 按Ctrl+C键可关闭窗体 Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii=13 Then ASCII码为13表示回车 List1.AddItem Text1.Text Text1.Text=End IfEnd Sub,返回目录,在文本框中输入,回车后输入的内容显示在列表框中,一个窗体仅在它没有可视和有效的控件或 KeyPreview 属性被设置为 True 时才能接收该事件。,5.5 鼠标与键盘事件键盘事件,例5.14 用户名称可从组合框中选择;在“用户名称”框中按回车键,“密码”框获得焦点;在“密码”框中按回车键,等价于单击“确定”按钮;单击“确定”按钮后,若密码正确,则打开有待建设的主窗体;单击“取消”按钮结束程序。,返回目录,5.5 鼠标与键盘事件键盘事件,Private Sub Form_Load()Cb1_name.AddItem 刘钢 Cb1_name.AddItem 王明 Cb1_name.AddItem 周华 Cb1_name.Text=Cb1_name.List(0)End SubPrivate Sub Cb1_name_Click()SendKeys tab txtPassword.Text=txtPassword.SetFocusEnd SubPrivate Sub Cb1_name_KeyPress(KeyAscii As Integer)If KeyAscii=13 Then SendKeys tab txtPassword=End Sub,返回目录,5.5 鼠标与键盘事件键盘事件,Private Sub txtPassword_Ke

    注意事项

    本文(VB程序界面设计.ppt)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开