关键词搜索

源码搜索 ×
×

你必须掌握的VB窗体知识

发布2020-09-16浏览4662次

详情内容

窗体的概念

在VB6之中,窗体是应用程序的重要组成部分,一个窗体对应一个窗口。在程序设计阶段,窗体是程序员的“工作台”,程序员在窗体上建立应用程序界面,在运行程序时,窗体是用户与计算机的交互界面。

窗体是VB中一类重要的对象,作为对象,窗体同样具有自己的三要素:属性、事件和方法。此外,窗体还作为其它控件的容器,用于放置其它控件。

在保存工程时,窗体会与工程文件保存在同一级目录下,窗体的扩展名为.frm格式,而工程的扩展名为.vbp格式。

窗体的常用属性

Name(名称)属性

Name属性用于设置窗体的名称,在窗体被创建时,默认名称为Form1、Form2等。Name属性只能在属性窗口修改,所有控件的Name属性都在属性窗口的第一行。在使用对象属性、事件和方法时,务必确保使用了正确的Name名称。
在这里插入图片描述

例如,以下是Form1窗体在修改Name名称前和修改Name名称为frm1后,调用隐藏该窗体的方法语句对比:

Form1.hide    ' 修改Name名称前
frm1.hide     '改Name名称为frm1后

    Caption属性

    Caption属性用于设置窗体的标题,默认情况下,窗体Caption属性与Name属性一致。可以根据需要修改为其它标题,修改方法为:

    窗体名称.Caption="自定义标题"   
    
    • 1

    Caption属性可以修改,也可以读取。读取Caption属性的方法为:

    变量名称=对象名称.Caption    '将对象名称赋值给变量
    
    • 1

    获取其它可读属性值的方法与此语法一致。

    Height和Width属性

    Height和Width属性用于设置窗体的高度和宽度。默认单位是twip,1twip=1/567cm。通常使用twip单位设置即可。例如:

    Form1.Height=2000      '设置Form1窗体的高度为2000twip
    Form1.Width=3000       '设置Form1窗体的宽度为3000twip
    

      Left和Top属性

      Left和Top属性用于设置窗体在屏幕中的位置,Left是指窗体左上角距离屏幕左边的距离,Top是指窗体左上角距离屏幕上边的距离。如果是其它控件,如Commmand1按钮,则其Left和Top表示控件在窗体中的位置。具体关系如下图所示。

      在这里插入图片描述

      Enabled属性
      Enabled属性用于设置窗体(包含窗体中的控件)是否可被用户操作。默认值为True可用,当设置为False时,则禁止用户对窗体进行操作。语法为:

      ![Form1.Enabled=True  '设置窗体Form1为允许操作](https://img-blog.csdnimg.cnhttps://cdn.jxasp.com:9143/image/20200916095249986.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zOTQzMzI5Mw==,size_16,color_FFFFFF,t_70#pic_center)
      
      

        ForeColor和BackColor属性
        ForeColor属性为窗体显示文本的颜色,BackColor用于设置窗体背景颜色。设置颜色的方法有三种方法,以黑色为例:

        方法一:Form1.BackColor=vbBlack    
        方法二:Form1.BackColor=QBColor(0)  
        方法三:Form1.BackColor=RGB(0,0,0)
        
          3

        方法一中,vbBlack在VB中是表示颜色的常量,代表黑色,类似的常量还有vbGreen绿色,vbBlue蓝色,vbYellow黄色,vbRed红色等。

        方法二中,QBColor(参数),其中参数范围是0-15之间的整数,代表不同的颜色,参数为0时代表黑色

        方法三中,RGB(参数1,参数2,参数3),参数1、2、3范围分别是0-255之间的整数。

        Icon属性

        Icon属性可以为窗体指定一个图片作为窗体左上角的显示图标,同时也作为显示在任务栏中的图标。图片格式必须为.ico格式。

        AutoRedraw属性

        该属性为False时,窗体在变动后(移动窗体、最大化最小化窗体、加载窗体等),用print方法打印的文本,将不会被自动重画,效果是窗体上用print方法打印的文本在窗体变动时将被清除。当设置为True时,使用print打印的文本会被自动重画,而不会被清除,或者说清除后又被重新打印了。此方法同样适用于在窗体上绘图。

        窗体常用事件

        Load事件

        Load事件是窗体的加载事件,当一个窗体被加载到内存时,会触发Load事件。可以利用Load事件,初始化窗体级的变量,设置控件的属性值。

        Unload事件

        当一个窗体从内存中卸载时,将触发Unload事件。

        Initialize事件

        Initialize事件为窗体初始化事件,当应用程序创建窗体实例时会发生该事件。对于窗体而言Initialize事件发生在窗体的Load事件之前。通常可以利用 Initialize事件初始化窗体所用数据。

        Activate事件

        当一个窗体变为活动窗体时,即当窗体获得焦点时,将会触发该事件。

        Deactivate事件

        与Activate事件相反,当窗体不再是活动窗体,即失去焦点时,将触发本事件。

        Click事件

        单击窗体时,触发此事件

        DbClick事件

        双击窗体时,触发本事件

        窗体常用方法

        Cls方法

        Cls方法用于清除窗体重利用print方法打印的文本,不会清除窗体中控件及控件内的文本。语法为:

        Form1.Cls    
        
        • 1

        Show方法

        Show方法可以显示一个窗体,该窗体如果没有被加载到内存中,将会优先触发一次Load事件。使用Show方法后,窗体将会优先于其它窗体显示在最前面。语法为:

        Form1.Show
        
        • 1

        Hide方法
        Hide方法用于隐藏一个窗体,仅将窗体隐藏起来,但是不会从内存中卸载,窗体上的参数仍然保存在内存中,使用Show方法重新显示窗体后,窗体与隐藏之前保持一致。语法为:

        Form1.Hide
        
        • 1

        Load方法
        Load方法用来将窗体加载进内存,将会触发窗体的Load事件,但是窗体未被显示。该方法同样适用于其它控件。语法为:

        Load Form1
        
        • 1

        Unload方法
        用来卸载窗体,将窗体所使用的参数从内存中卸载,包括窗体中的所有控件,卸载后,将不会再占用计算机内存资源。使用Unload方法后,窗体将会达到Hide方法的隐藏效果。该方法同样使用于其它控件。语法为:

        Unload Form1
        
        • 1

        如何创建多窗体
        通常新建一个工程后,系统会为我们自动创建一个窗体,默认名称为Form1,此时当我们项目需要再创建一个窗体时,可以通过菜单栏——工程——添加窗体,在弹出的添加窗体窗口中,选择默认窗口,即可创建一个新的窗体。或者可以,在工程资源管理窗口中,在Form1窗体上右键——添加——添加窗体。
        在工程资源管理窗口中,双击窗体,即可进入该窗体的编辑界面。

        在这里插入图片描述

        删除窗体
        删除不需要的窗体,通过在工程资源窗口,选中需要删除的窗体,右键——移除。

        窗体实战练习题
        目标:通过本练习,基本掌握熟悉窗体属性、事件和方法的使用方法。

        步骤一:
        按照下图,建立两个窗体。并分别将Name名称属性修改为:frmLog和frmMain,并将窗体的Caption标题属性修改为“登录界面”和"主界面"

        在这里插入图片描述

        步骤二:
        在第一个窗体,frmLog窗体上,新建一个命令按钮,并将Caption属性修改为"登录"。

        在这里插入图片描述

        步骤三:
        双击登录按钮,在其事件过程中写入如下代码:

        frmMain.Show   '显示frmMain窗体
        Me.Enabled = False  '禁止frmLog窗体再被操作
        

          在这里插入图片描述

          Me代表当前窗体的名称,此处即frmLog,可以用frmLog代替。

          步骤四:
          在第二个窗体(frmMain)编辑窗口中,按照下图所示,建立1个Text文本框和5个命令按钮控件。

          在这里插入图片描述

          步骤五:
          进入frmMain窗体代码编辑窗口,按照下图在对应的事件过程下编写如下代码:

          在这里插入图片描述

          其中End语句,是退出应用程序,即该应用程序包含的所有窗体和控件将会全部从内存卸载。

          步骤六:
          运行程序,测试效果。单击窗体左移,窗体将向左移动,移动距离为text1文本框中的数值,同样的单击窗体右移,窗体将会右移。修改text1文本框数值为200,单击隐藏窗体,窗体被隐藏,在frmLog窗体中单击登录,frmMain窗体重新打开,且Text1文本框内的数值仍是200,单击卸载窗体,窗体被关闭,再次打开后,Text1文本框内数值变为初始值100,这就是hide与Unload方法的区别。单击退出按钮,整个应用程序被关闭。

          在这里插入图片描述

          好了,本节课程到此结束,相信大家通过本节课程,已经对于窗体有了一个全面且深刻的认识了。下节课我们再见吧。

          相关技术文章

          点击QQ咨询
          开通会员
          返回顶部
          ×
          微信扫码支付
          微信扫码支付
          确定支付下载
          请使用微信描二维码支付
          ×

          提示信息

          ×

          选择支付方式

          • 微信支付
          • 支付宝付款
          确定支付下载