1、资料来自网上搜集 由 YORK888 整理 1关于 VB语言和怎样学习 VB VB6.0 全称为 VisualBasic 6.0,是微软公司推出的可视化编程工具 MSDN之一,是目前世界上使用最广泛的程序开发工具。如果你是一个对编程一无所知,而又迫切希望掌握一种快捷实用的编程语言的初学者,那选择 VB 6.0没错的。即使考虑到 VB程序本身编译和运行效率较低的不足(嘻嘻速度现在不是问题吧),单是它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,它仍不失一款优秀的编程工具,是初学者的首选。也许你会问,我以前没学过任何一种语言,我能快速上手吗?别担心,没问题 VB的语法的和 QBASIB语
2、言是基本相同的,也就是说它的语法是最容易被初学者所接受的。另外 VB提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且 VB提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以 VB学起来简单,用起来方便。接着看看 VB语言的前景,在目前各种编程语言共存的时代,VB 会不会落伍呢?当然不会了,在我写这篇文章的同时,微软已经透露了 VB7.0将完全面向对象的消息,可以肯定下一代 VB的功能一定会强大很多,我们这些所谓的 VB 程序员总算可以放心了,VB 不会落后于时代,毕竟它是使用人数最多的优秀的开发工具。好了,侃了这么
3、多关于 VB的台前幕后,总之是为想学编程的你树立信心,编程一点都不难,只要你决定了开始,就让我们一起踏上愉快的编程之旅吧。接下来谈谈怎样学习 VB,先说说“看实例学 VB6.0”系列教程,它是面向编程初学者的 VB入门教程,这个教程的特点是抛开晦涩难懂的概念和语法,不做内容上的堆积和罗列,而是采用了每节一个生动有趣的小例子的形式,每个小例子中会涉及到一个或几个 VB编程的知识点(可能是控件,也许会是某个函数或编程小技巧),使你快速入门。希望你学完此教程后能达到下述的效果:从对编程一窍不通或从未接触过编程的状态,通过学习能够对 VB6.0的编程环境比较熟悉,掌握 VB开发界面的使用方法;对VB语
4、言的基本语法大致了解,知道常见的语句的意义;学习 VB常用控件的使用方法,并能将它们灵活运用到应用程序中;能开发简单的 VB程序。到那时你已经能够继续深入的学习 VB编程,嘻嘻,目标就是这样啦。然后谈谈学习编程的方法,万事开头难,刚刚开始,遇到些困难没关系,慢慢来。编程是一个不断学习,不断积累的过程,编程的乐趣也正是存在于学习的过程中。我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。另外,编程涉及到很多的知识,象操作系统的、软件工程的、硬件系统的以及编程思想等各个方面,这就需要我们多看看这方面的资料,扩充自己的知识面。教程分为三个大的部分,
5、它们是由浅入深的一个系列,分别是:资料来自网上搜集 由 YORK888 整理 2一、熟悉一下 VB6.0的编程环境二、学习 VB常用控件的使用方法三、试着开发简单的 VB应用程序好了,下面就一起来开始我们的学习吧。认识一下 VB 6.0的编程环境 VB6.0 采用可视化的编程环境,它好学易用,运行 VB6.0后,会出现如下图所示的窗口,呵呵,看起来蛮复杂的,好多的按钮、菜单、小窗口,别担心,待会儿我们会一起学习这些东东都是干什么用的。先来解决一个小问题,怎么新建一个 VB的工程呢?方法是这样的,在程序启动时出现的“新建工程”对话框中选择“标准EXE”并点击确定,就能直接新建一个工程,如果你跳
6、过了这个对话框则也可从“文件”菜单中选择“新建工程”重新调出此对话框。下面一起来看看 VB的编程环境,虽然看起来复杂,但可以把它分为几个部分,每个部分都有自己特定的功能,这样我们就清楚多了。其实 VB这是通过这样一个界面把相近或同类的功能组合在一起的,它使我们在设计程序时能方便的控制程序的方方面面。窗体的最上层是“VB 6.0 的菜单”和“便捷工具按钮”,菜单中包含了所有的 VB提供的功能的选项,而其中一些常用的功能或操作选项则被提取出来放在了“便捷工具按钮”中,通过点击这些快捷按钮可以加快程序开发的速度,下图标出了常见的工具按钮的作用,记着使用它们哦。资料来自网上搜集 由 YORK888 整
7、理 3接着看看“VB 的组件面板”和“窗体设计区域”,VB 提供了方便的窗体设计区域,它位于整个编程窗口的中间。我们可以在这个区域中搭建出美观实用的程序界面,试着从“VB 的组件面板”中找到“按钮 CommandButton”,点击选中后,再到“窗体设计区域”的窗体上点一下,这时,窗体上会出现一个按钮,这样我们就把按钮添加到我们程序的界面中了。嘻嘻,忘了告诉你哪里是“VB 的组件面板”了,就是最左边的那一条包含许多看起来眼熟的小东西的区域,它是 VB提供给我们的标准的编程组件(控件),它把程序设计中常常用到的诸如按钮、图片框、列表框等等东西作好了放在那里,我们如果要使用只须添加到窗体中即可。
8、 屏幕的右边有三个从上到下排列的小窗口,它们分别是:“VB 工程管理器”:用来管理开发一个 VB程序所需要的各种类型的窗体和模块,如左图是一个工程所包含的东西,窗体是一个程序表现在外面的界面、模块是程序内部使用的代码。当我们点击“添加窗体”便捷工具按钮后,左图的“VB 工程管理器”中就会显示出新添加的窗体,这也就是“VB 工程管理器”的功能,它使我们从总体上把握程序开发的各个部分。组件属性窗口”:用来显示组件的属 性,并允许我们修改,设定这些属性的值,我们在窗体设计区域的窗体上 选中一个组件,以按钮为例,则在“属性窗口” 中会列出它的属性,我们可 以看到常用的“Name”、 “Capition
9、”、“Font”等等属性,试着把“Capition”属 性改为“这是一个按钮”,然后看看“窗体设计区域”的按钮上“窗体布局窗口”:调整程序运行时,程序窗体在屏幕中的初始位置,把鼠标移到左图屏幕中的窗体上,这时鼠标会变成移动形状,拖动窗体,就设置好了运行时此窗体的位置。好了说了这么多,还差一个区域没讲,那就是“代码编辑区域”,当我们在“窗体设计区域”双击鼠标,就能弹出这个区域,可以看到一行行的 VB程序显示在其中,我们可以修改,写入程序代码,来让程序实现一定的功能,它是整个程序设计的关键,如果你对 VB语言的语法还不是十分了解,可以继续下一节专门对“VB 语法”的讲解,别着急,慢慢来,很快就能入
10、门的。 资料来自网上搜集 由 YORK888 整理 4“VB工程管理器”:用来管理开发一个 VB程序所需要的各种类型的窗体和模块,如左图是一个工程所包含的东西,窗体是一个程序表现在外面的界面、模块是程序内部使用的代码。当我们点击“添加窗体”便捷工具按钮后,左图的“VB 工程管理器”中就会显示出新添加的窗体,这也就是“VB 工程管理器”的功能,它使我们从总体上把握程序开发的各个部分。“组件属性窗口”:用来显示组件的属性,并允许我们修改,设定这些属性的值,我们在窗体设计区域的窗体上选中一个组件,以按钮为例,则在“属性窗口”中会列出它的属性,我们可以看到常用的“Name”、“Capition”、“
11、Font”等等属性,试着把“Capition”属性改为“这是一个按钮”,然后看看“窗体设计区域”的按钮上显示的文字是不是改变了。VB的简单语法学习“窗体布局窗口”:调整程序运行时,程序窗体在屏幕中的初始位置,把鼠标移到左图屏幕中的窗体上,这时鼠标会变成移动形状,拖动窗体,就设置好了运行时此窗体的位置。好了说了这么多,还差一个区域没讲,那就是“代码编辑区域”,当我们在“窗体设计区域”双击鼠标,就能弹出这个区域,可以看到一行行的 VB程序显示在其中,我们可以修改,写入程序代码,来让程序实现一定的功能,它是整个程序设计的关键,如果你对 VB语言的语法还不是十分了解,可以继续下一节专门对“VB 语法”
12、的讲解,别着急,慢慢来,很快就能入门的。 VB语言的语法和 QBASIC基本一致,可以说如果你能读懂 QBASIC程序,那你读 VB的程序是没有问题的,这一节中我们只是简单的讲一讲 VB的语法,因为在今后的各个实例中我们会不断接触到新的语法知识,这也是一个积累的过程。如果你还记得上节中的内容,我们提到过如果在“窗体设计区域”的某个组件(控件)上双击鼠标,会出现“代码编辑窗口”,也就是如下图的窗口,我们可以在其中输入或是修改程序的代码。在我们双击控件到写入代码的这个过程中,我们涉及到了一个很重要的概念,这是 VB与 QBASIC的主要差别之一,大家知道在 QBASIC包括 Tubro C,Tub
13、roPascal 等语言中程序从一开始就需要我们一点点的写代码来实现所有的功能,比如程序运行的界面,输入输出,键盘控制等,它们在程序中体现为一个个的过程或者是函数及子程序,它们都是完全面向过程的编程语言;但是现在的 VB、VC、DELPHI 等编程语言,都提供了可视化的编程环境,备有一整套常见的组件(控件)供我们使用,这些控件可以看作是对象(VB 严格的说不是完全面向对象的编程语言),我们写程序时会直接与这些对象打交道,而不象原来。所以在 VB中大部分的代码是与这些相关的,例如下图所示的一段代码,它是我们在一个按钮(Command)上双击鼠标而由 VB自动产生的一个子过程,Private Su
14、b Command1_Click()是子过程的开始,End Sub表示子过程的结束。然后我们可以在子过程中添加程序代码,也就是由我们自己来写当按钮被点击时,程序所做出的响应。资料来自网上搜集 由 YORK888 整理 5下面我们便来分析一下这段代码。B 中声明一个变量使用“Dim 变量名 As 变量类型”的方法,一般在程序中使用的到的变量都应该有变量声明,如上例中的a、b、i 分别被定义为整型和字符串型变量,VB 中的变量类型有以下几种:数据类型 说明Byte 二进制数 Boolean 真假值 Integer 整数 Long 长整型Single 实数 Double 双精度型 Currency
15、 货币 Date 日期和时间 Object 对象 String 字符串 Variant 可变类型控制结构和循环结构是程序设计中常见的两种结构。计算机在运行程序的时候,执行语句的顺序是从上向下的。 有些简单程序可以只用单向流程来编写,但稍微复杂的程序就要靠控制语句来控制程序执行的流程。控制结构主要有两种,分支结构和循环结构。 分支结构:分支结构事实上是一种选择,在不同的条件下选择执行不同的程序段。实现分支结构的语句有很多,最常用的是ifthenelse。例如: if 条件 then 程序段一 else 程序段二 end if 如果条件满足了,电脑将执行程序段一中的语句,然后跳过程序段二,执行下面
16、的语句。如果条件不满足,电脑将跳过程序段一种的语句,执行程序段二,然后继续执行下面的语句。 循环结构:循环结构就是让电脑反复的执行某一程序段落干次。 用 DoLoop可以循环重复执行一语句块,且重复次数不定。 在已知循环次数的条件下,用 Fornext可以反复执行统一语句块。以上两种结构你可以参照图中所示的代码,仔细体会一下,今天就讲这么多了,下节我们就要进入实例式的控件学习。资料来自网上搜集 由 YORK888 整理 6简单的文本框 TEXTBOX的例子 文本框控件(TextBox)是 VB中最常用的控件。它是显示和输入文本的容器,相当于一个文字编辑器,提供了所有基本的文字处理功能,例如文
17、本的编辑等。在下面这个小程序中,我们能看到文本框控件(TextBox)的最基本的属性。为了学习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码:Option Explicit- TextBox的 常 用 属 性 的 例 子- 洪 恩 在 线 求 知 无 限-名 称 -作 用 - CmdClear 清 除 文 本 框 内 容 按 钮 TextAll 文 本 框这个例子的两个窗体界面如下:主窗体窗体(FormBack)资料来自网上搜集 由 YORK888 整理 7我们首先新建一个标准的 EXE 工程。添加两个窗体,并把 TextBox、Button、Label 控件放置在窗体上。各文本
18、框的名称如下表:文本框名称 名称属性 文本框名称 名称属性会员编号文本框 TextID 电子邮件文本框 TextMail密码文本框 TextPassWord 个人介绍文本框 TextResume姓名文本框 TextName 会员信息文本框 TextAll在属性窗口中将 TextPassWord的 PassWordChar属性设为*;TextResume 的 Multiline属性设为 Ture,ScrollBars属性设为 2 -Vertical;TextAll 文本框的 Multiline属性设为为 Ture, ScrollBars属性设为 2 -Vertical,Appearance 属性
19、设为为 0 - Flat。下一步我们为 FormTxtBox窗体中“确定”(CmdOK)和“清除”(CmdClear)按钮的 Click事件中添加相应的程序。其中:TextID.Text = “ 是把会员编号文本框中的内容清空,其它语句与此类似。FormBack.TextAll.Text = LblID.Caption & “ “ & TextID.Text _ & vbNewLine & 该语句设置 FormBack窗体中 TextAll文本框的文本。vbNewLine 是换行显示标志。“ _”是续行标志,当语句一行写不下时使用此标志,但要注意:前面要加空格。 代码写好之后,我们就可以保存工
20、程,然后按“Ctrl+F5”键,测试检验一下我们的程序了。简单的列表框 ListBox的例子列表框(ListBox)控件表示一个选项清单,用户可能用鼠标选择其中一个或者几个选项。 列表框的特点是:列表框中的项目是通过程序插入到其中的,用户无法向清单中输入数据,当选择其中的项目,并在用户单击一个按钮或者执行某个操作时,由应用程序完成对指定项目的具体操作。下面这个例子充分说明了列表框的这个特点,并介绍了列表框(ListBox)的常用属性。资料来自网上搜集 由 YORK888 整理 8为了学习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码: Option Explicit- 简 单 的
21、 列 表 框 ListBox的 例 子- 洪 恩 在 线 求 知 无 限-名 称 -作 用 - List1、 List2 列 表 框 LefttoRightCmd 移 动 所 选 项 目 到 另 一 个 列 表 框 ( 左 到 右 )这个例子包含一个窗体,窗体中有两个列表框(List1、List2)和八个按钮,界面如下:窗体(FormListBox)我们首先新建一个标准的 EXE工程,添加一个窗体,并把列表框和按钮控件添加到窗体上。各按钮控件的名称如下表:按钮名称 名称属性 按钮名称 名称属性删除所选项目(左) List1movecmd 删除所选项目(右) List2movecmd增加新项目(
22、左) List1addcmd 增加新项目(右) List2addcmd清除弄表(左) List1clearcmd 清除列表(右) List2clearcmd右箭头 lefttorightcmd 左箭头 RighttoleftcmdList1列表框 Sorted 属性设为“False” List2 列表框 Sorted 属性设为“True” MultiSelect 属性设置为 2 即 List2控件中的项目总是排序的 在属性窗口中,将 List1列表框 Sorted 属性设为“False”;List2 列表框 Sorted 属性设为“True”,MultiSelect 属性设置为 2,即 Lis
23、t2控件中的项目总是排序的。下一步我们为各控件添加相应的程序。其中:资料来自网上搜集 由 YORK888 整理 9List1.AddItem “China“ 是将“China”添加到列表框中。List1.ListIndex 返回的是列表框 List1中当前选择项目的索引号码。 List1.ListCount 返回的是列表框 List1中项目总数。List1.ListCount - 1 返回列表框 List1中最后一个项目的索引号。List1.Selected() 返回的是一个项目的选择状态,返回的是布尔值。代码写好之后,我们就可以保存工程,然后按“Ctrl+F5”键,测试检验一下我们的程序了
24、。在这个小程序中,包含了列表框中的一般常用属性和方法。CommomDialog使用的例子 CommonDialog 控件是常用的一个控件,它为我们提供了打开、另存为、字体、颜色、打印、帮助等几种类型的标准对话框,本例演示了所有这些类 型的对话框的使用方法。为了学习方便,提 供的源码已经作了详细的中文注释,看看源码 框中的代码:- 通 用 对 话 框 使 用 方 法 全 解- 洪 恩 在 线 求 知 无 限-名 称 -作 用 - CdlTest 通 用 对 话 框 CmdOpen “打 开 ”对 话 框 按 钮 CmdSave “另 存 为 ”对 话 框 按 钮这个例子包含一个窗体, 窗体中有两
25、个列表框(List1、List2)和八 个按钮,界面如下:资料来自网上搜集 由 YORK888 整理 10窗体(FormListBox)我们首先新建一个标准的 EXE 工程,添加一个窗体,并把列表框和按钮控件添加到窗体上。各按钮控件的名称如下表:按钮名称 名称属性 按钮名称 名称属性删除所选项目(左) List1movecmd 删除所选项目(右) List2movecmd增加新项目(左) List1addcmd 增加新项目(右) List2addcmd清除弄表(左) List1clearcmd 清除列表(右) List2clearcmd右箭头 lefttorightcmd 左箭头 Right
26、toleftcmdList1列表框 Sorted 属性设为“False” List2 列表框 Sorted 属性设为“True” MultiSelect 属性设置为 2 即 List2控件中的项目总是排序的 在属性窗口中,将 List1列表框 Sorted 属性设为“False”;List2 列表框 Sorted 属性设为“True”,MultiSelect 属性设置为 2,即 List2控件中的项目总是排序的。下一步我们为各控件添加相应的程序。其中:List1.AddItem “China“ 是将“China”添加到列表框中。List1.ListIndex 返回的是列表框 List1中当前选
27、择项目的索引号码。 List1.ListCount 返回的是列表框 List1中项目总数。List1.ListCount - 1 返回列表框 List1中最后一个项目的索引号。List1.Selected() 返回的是一个项目的选择状态,返回的是布尔值。代码写好之后,我们就可以保存工程,然后按“Ctrl+F5”键,测试检验一下我们的程序了。在这个小程序中,包含了列表框中的一般常用属性和方法。CommomDialog使用的例子 CommonDialog 控件是常用的一个控件,它为我们提供了打开、另存为、字体、颜色、打印、帮助等几种类型的标准对话框,本例演示了所有这些类型的对话框的使用方法。为了学
28、习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码:- 通 用 对 话 框 使 用 方 法 全 解- 洪 恩 在 线 求 知 无 限-名 称 -作 用 - CdlTest 通 用 对 话 框 CmdOpen “打 开 ”对 话 框 按 钮 CmdSave “另 存 为 ”对 话 框 按 钮资料来自网上搜集 由 YORK888 整理 11如果控件面板中没有 CommonDialog控件的小图标,必须先从“添加控件对话框”中添加,下面我们来看看怎样调用不同类型的对话框。CommonDialog 控件有一系列的 Show方法,例如:ShowOpen、ShowSave、ShowFont、S
29、howColor、ShowPrinter、ShowHelp 等,这些方法的使用语法是类似的,如下所示:object.ShowOpen,我们只须在程序中写入这个语句,就能调出“打开”对话框,同样也能调用其它类型的对话框。而 CommonDialog控件的属性是和不同的对话框类型紧密相关的,有些属性只适用于某一类对话框,有些属性在不同的对话框中的属性是有差别的,所以下面分类列出了和不同对话框相关联的属性的用法。与 ShowOpen、ShowSave 方法相关的属性:FileName 属性:返回或设置所选文件的路径和文件名,如果在使用 Show方法以前使用 FileName属性,则设定了对话框的默认
30、文件名;如果是在以后使用则返回选择的文件名。使用语法是: CommonDialog.Filename=pathname Filter 属性:返回或设置在对话框的类型列表框中所显示的过滤器(也就是限定打开或保存为的文件类型),它的使用语法是:object.Filter = 描述文字 1 |过滤标示 1 |描述文字 2 |过滤标示 2其中描述文字为任意文字,而 过滤标示则采用*.文件后缀(例如:*.bmp)的格式,描述文字和过滤标示之间用“|”隔开。DefaultExt 属性:为该对话框返回或设置缺省的文件扩展名,也就是当我们没有指定打开或保存的文件类型时,按DefaultExt属性所设置的扩展名
31、为默认值。与 ShowFont方法相关的属性:Color 选定的颜色。为使用此属性,必须先将 Flags属性设置为 cdlCFEffects。 FontBold 是否选定“粗体”。 FontItalic 是否选定“斜体”。 FontStrikethru 是否选定删除线。 FontUnderline 是否选定下划线。 FontName 选定的字体名称。 FontSize 选定的字体大小。使用的语法是直接引用,比如我们要根据“字体对话框”返回的值设置文本框的字体,则直接采用语句:Text.Font=CommonDialog.FontnName 与 ShowColor方法相关的属性:Color 选定
32、的颜色。为使用此属性,必须先将 Flags属性设置为 cdlCFEffects。与 ShowHelp方法相关的属性:HelpCommand 属性 返回或设置需要的联机帮助的类型 HelpFile 属性 确定帮助文件的路径和文件名语法是: object.HelpFile = filename 下面看看 CancelError属性,它设置当选取“取消”按钮时是否认为出错,使用的语法是:CommonDialog.CancelError= boolean (boolean指布尔型变量)如果我们把它设为 True,则当使用者选取了“取消”按钮时程序会返回一个 cdlCancel错误,通过捕捉这个错误并加
33、以处理,我们就能避免程序的出错。具体的使用可在源码中看到实例。在状态栏中显示帮助信息 资料来自网上搜集 由 YORK888 整理 12状态栏是 VB中的一个很有用的控件,但是默认状态下它不在控件面板中,在我们使用它之前必须先添加,方法是按下Ctrl+T快捷键,在弹出的“Components”对话框中选中 MS Windows Common Controls。这时在控件面板中会出现状态栏的小图标,双击此图标就能把它添加到窗体中。接下来我们根据自己的需要来编辑状态栏,选中窗体上的状态栏,在鼠标右键菜单中选择“属性 Properties”,这时会弹出如上图所示的对话框,我们选择“Panels 窗格
34、”。其中“Insert Panel”按钮用来添加状态栏中的窗格数目,当我们添加一个窗格后“Index”的值也会自动加一,在程序中我们通过窗格的索引值来引用窗格。下面的一些项目都是窗格的属性,我们可以在此设置也可在程序中控制它。比较常用的属性有:“Text”-在各个窗格中显示的文字;“Alignment”-窗格中文本的对齐方式;“Style”窗格的样式(选择 0-sbrText为显示文本,选择 6-sbrDate为显示日期等等);“Bevel”-窗格的凹凸状态。另外我们还可以在窗格中加入图片,方法是点击“Browse”然后选中图片文件。在本程序中我们在第一个窗格中动态显示帮助信息,在第二、三个窗
35、格中分别显示日期和时间。那么怎样在程序中控制状态栏中显示的文本呢?例如我们希望鼠标移动到不同的按钮上时状态栏的第一个窗格中显示不同的帮助,则我们在按钮的 OnMouseOver事件中加入如下语句即可:Private Sub CmdNew_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) staSample.Panels(1).Text = “ 资料来自网上搜集 由 YORK888 整理 13staSample.Panels(1).Text = “清空文本框“ End Sub 同样的我们能为其它按钮
36、等控件添加帮助信息。为了学习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码:- 一 个 使 用 StatusBar的 例 子- 洪 恩 在 线 求 知 无 限-名 称 -作 用 - CmdItalic “斜 体 ”按 钮 CmdBold “粗 体 ”按 钮 CmdExit “退 出 ”按 钮这样状态栏中就能动态显示帮助信息了。使用右键菜单的例子右键菜单能让软件的使用者快捷的完成操作,那么如何把右键菜单用在自己写的程序中呢?在这个小程序中我们能看到编辑并使用右键菜单的方法。为了学习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码:- 弹 出 鼠 标 右 键 菜 单- 洪 恩
37、 在 线 求 知 无 限-名 称 -作 用 - CmdCancel 退 出 按 钮 mnublue “兰 色 ”菜 单 项 mnured “红 色 ”菜 单 项我们先打开菜单编辑器(在工具菜单中),然后添加一个一级菜单 Popmenu,将它的 Visible属性设为“False”,这代表菜单在程序运行时是看不到的,由于一级菜单是二级菜单的上级菜单,所以二级菜单也是看不到的。然后我们来添加几个二级菜单,注意每个菜单都有 Caption属性和 Name属性,这两个属性是必须写的,Caption 属性是显示在菜单项上的内容,而 Name属性则是我们要在程序中引用菜单项的代号,类似与其它控件的 Nam
38、e属性。而菜单中分隔线是通过把 Caption属性设为“-”来实现的。资料来自网上搜集 由 YORK888 整理 14菜单编辑好后,就能在程序中引用并控制它,在本例中我们希望在文本框上点击鼠标右键时弹出这个右键菜单,则需要在文本框的 MouseDown事件中加入控制语句:Private Sub RichTextBox1_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single) If Button = 2 Then 如果是鼠标右键按下时Form1.PopupMenu mnufile, 0, X, Y 弹出右键菜单
39、End IfEnd Sub其中 MouseDown事件各个参数意义如下:button 返回一个整数,用来标识该事件的产生是按下哪个按键,其中左键为 0,右键为 2,中间键为 4 shift 返回一个整数,标示是否同时有 Shift,Ctrl,Alt键按下x, y 返回一个指定鼠标指针当前位置的数Popupmenu 是一个方法:PopupMenu 方法用来弹出一个菜单,语法是:object.PopupMenu menuname, flags, X, Ymnufile 是我们在菜单编辑器中设计好的菜单的名称X,Y 是弹出菜单的位置,可以为数字,如果直接写为 X,Y则是在当前鼠标位置弹出菜单这样就能调出右键菜单,然后我们根据自己的需要,为每个菜单项的 Click事件编写代码,完成一些特定的操作,右键菜单就可以使用了。最后效果如下图所示: