【VB开源代码栏目提醒】:网学会员--在 VB开源代码编辑为广大网友搜集整理了:汉字拼音的首字符的获取与运用(VB)—计算机毕业设计论文 - 学士论文绩等信息,祝愿广大网友取得需要的信息,参考学习。
目 录摘 要关键字前 言第一章
VB 语言概述……………………………………………………………31.1、
VB 简介 …………………………………………………………………31.2、
VB 语言的基本特点及
VB 应用程序的基本持点………………………3 1.2.1、可视化设计……………………………………………………………3 1.2.2、事件驱动编程…………………………………………………………41.3、为何选择
VB 作为开发语言……………………………………………41.4、
VB6.0 应用的基本开发方法……………………………………………51.5、
VB 与 API 函数……………………………………………………………6第二章 用
VB 开发汉语拼音首字符获取程序…………………………………82.1、程序设计思路……………………………………………………………92.2、获得汉字拼音首字符程序的源
代码……………………………………92.3、具体界面及控件设置……………………………………………………10第三章
毕业设计总结…………………………………………………………11第四章 本系统运行的软硬件配置……………………………………………11第五章 主要参考文献…………………………………………………………11 汉字拼音的首字符的获取与运用摘 要: 汉字拼音的首字符,可以在数据库中作为某一关键字段(如:商品的名称、客户单位的名称等)的辅助查询字段来简化查询过程中的输入问题。
也就是说,用户只要输入需要查找的汉字拼音的首字符,就能很快定位到要查找的记录,当要查找的字数在 4、5 个以上时,其重码率还是很低的。
提起将汉字转化为拼音,大家可能以为这是一个复杂的问题,比如将拼音输入法的码表文件进行逆转换,再根据汉字来查询拼音等等。
其实我们需要的只是汉字拼音的首字符,其实用
VB6 实现这一功能问题远没有这样复杂。
下面把用
VB6 实现这一功能的方法介绍如下。
关键字:汉字拼音的首字符、获取、
VB6 开发。
2 汉字拼音首字符获取程序的开发 前 言 电脑已经成为挂在我们嘴角的一句口头禅,它已经深入到日常工作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培训以及游戏娱乐等。
Windows系统的推出使电脑从高雅的学术殿堂走入了寻常百姓家,各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。
然而,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。
以前开发 Windows 下软件是专业人员的工作,需要掌握许多专业知识和经过特殊的培训才能胜任。
现在不同了,即使你没有接受过严格的程序设计训练,使用 Visual Basic也一样能够开发出功能强大、适合自己特殊需求的应用程序了。
Visual Basic 继承了 Basic语言易学易用的特点,特别适合于初学者学习 Windows 系统编程。
我作为一名中央电大的学生,在工作和
学习之余,我时常钻研专业课基础理论,经常用
VB 搞一些小程序,有次我从网上下载了一个共享软件《成语辞典 3.0 》,在这个软件中,用成语汉字拼音的首字符代替汉字
查询成语,如用“yghl”可查找到成语“叶公好龙” ,在近万条成语中只有极个别的重复。
于是我就有了编写一个汉字拼音首字符获取程序的想法, 适逢这次
毕业设计,我在老师的指导下,开始编写这个程序。
第一章
VB 语言概述 1.1、
VB 简介
VB 是微软公司出品的一个快速可视化程序开发工具
软件,借助微软在操作系统和办公软件的垄断地位,
VB 在短短的几年内风靡全球。
VB 是极有和功能强大的软件,主要表现在:所见即所得的界面设计,基于对象的设计方法,极短的软件开发周期,较易维护的生成
代码。
美国微软公司在 1991 年推出
VB1.0 至今已经经历了 6 个版本,
VB6.0 运行在 win9x 或winme,win2000,winxp,windowsNT 等操作系统下,是一个 32 位的应用程序开发工具。
1.2、
VB 语言的基本特点及
VB 应用程序的基本持点
VB 程序语言具有许多优秀的特性用其设计应用程序时有两个基本特点:可视化设计和事件驱动编程.1.2.1、可视化设计 同其他的一些可视化程序开发工具一样
VB 具有可视化设计的特点微软的 Word 在刚刚进入市场时同 WPS 竞争的一个重要的功能砝码就是quot所见即所得quot的字处理功能
VB 在设计应用程序界面时也可以说是quot所见即所得quot.在设计时头脑中所想象的应用程序界面完全可以通过键盘鼠标以及徒手画出来而不是编制大量的
代码然后再编译生成如果需要修改也 3是利用键盘鼠标和手画而底层的一些程序
代码由
VB 自动生成或修改。
VB 为用户提供大量的界面元素在
VB 中称为控件对象这些控件对象对于熟悉 Windows应用程序的用户而言是一点也不陌生如quot窗体quot、quot菜单quot、quot命令按钮quot、quot工具按钮quot、quot检查框quot等等用户只需要利用鼠标、键盘把这些控件对象拖动到适当的位置设置它们的大小、形状、属性等就可以设计出所需的应用程序界面。
1.2.2、事件驱动编程 Windows 操作系统出现以来图形化的用户界面和多任务多进程的应用程序要求程序设计不能是单一性的在使用
VB 设计应用程序时必须首先确定应用程序如何同用户进行交互.例如发生鼠标单击、键盘输入等事件时由用户编写的
代码控制这些事件的响应这就是所谓的事件驱动编程。
前面已经谈到在
VB 中把窗体以及quot菜单quot、quot按钮quot等控件称为对象如果设计出了应用程序那么与应用程序的用户直接进行交互的就是这些对象组成的图形界面也称为用户接口或用户界面在
设计应用程序时就必须考虑到用户如何与程序进行交户.更进一步甚至程序和程序之间也会有通讯和交户基本上用户是通过鼠标、键盘与应用程序进行交互的这时那些对象就必须对鼠标和键盘操作所引发的事件做出响应.响应就是指执行一段应用程序它不沿预定的路径执行而是在响应不同事件时执行不同的
代码.因此应用程序
代码的路径在每次响应而执行时可能都是不形同的。
1.3、为何选择
VB 作为开发语言 除了
VB 之外当前能够编制 Windows 应用程序的可视化编程工具还有很多所针对的编 程 领 域 也 各 有 侧 重 就 微 软 系 列 的 可 视 化 开 发 工 具 而 言 就 有VBVisualCVisualJVisual Foxpro 等其中 Visual Foxpro 是针对数据库编程的开发工具Visual C是为专业程序设计员提供的开发工具变量声明和定义严密功能强大灵活必须经过相当的努力才能掌握而
VB 不支持虚类、多态性和类的继承相对而言
VB 简单易学变量定义不太严密对于非专业程序员而言功能足够强大同 Visual C一样也支持
网络编程和数据库编程。
除了微软之外其他公司也在为 Windows 操作系统平台制作应用程序开发工具例如前Borland 的公司出品的
DelphiCBulider JBulider 等其他一些公司出品的针对数据库编程的 PowerBulider PowerDesigner 等不可否认这些产品相当出色如果能够熟练掌握将是编程者能力的体现但是必须承认对 Windows 操作系统最熟悉的还是微软而且微软本身 Windows 操作系统的源
代码采取不公开的策略使得其他公司出品的产品在实现相同功能时多少都要走些弯路用户在使用这些产品设计应用程序时程序的效率将会受到影响。
在选择所需要的应用程序开发工具时不但要考虑开发工具的功能是否强大还要考虑所花费的时间和效果单纯地追求功能的强大也许会事倍功半。
中央电大陈明主编的《Visual Basic 程序设计》是计算机应用专业采用的一本难得的教材使我受益匪浅。
通过这门
课程的学习,我已能用
VB 编写简单的程序,为了搞好这次毕业设计,我决定使用
VB 作为编程语言。
1.4、
VB6.0 应用的基本开发方法 4 1、交互式开发 传统的应用程序开发过程可以分为三个明显的步骤:编码、编译和测试。
但是
VB 与传统的语言不同它使用交互式方法开发应用程序使三个步骤之间不再有明显的界限。
在大多数语言里如果编写
代码时发生了错误则在开始编译应用程序时该错误就会被编译器捕获。
此时必须查找并改正该错误然后再次进行编译对每一个发现的错误都要重复这样的过程。
VB 在编程者输入
代码时便进行解释即时捕获并突出显示大多数语法或拼写错误。
看起来就像一位专家在监视
代码的输入。
除即时捕获错误以外
VB 也在输入
代码时部分地编译该
代码。
当准备运行和测试应用程序时只需极短时间即可完成编译。
如果编译器发现了错误、则将错误突出显示于
代码中。
这时可以更正错误并继续编译、而不需从头开始。
由于
VB 的交互特性因此在开发应用程序时系统频繁地运行着应用程序。
通过这种方式
代码运行的效果可以在开发时进行测试而不必等到编译完成以后。
2、事件驱动应用程序的
工作方式 事件是窗体或控件对象识别的动作。
在响应事件时,事件驱动应用
程序执行
VB 代码。
VB 的每一个窗体和控件对象都有一个预定义的事件集。
如果其中有一个事件发生,并且在关联的事件过程中存在
代码,则
VB 就会调用该
代码。
尽管
VB 中的对象自动识别预定义的事件集,但要判定它们是否响应具体事件以及如何响应具体事件则是编程的工作了。
代码部分(即事件过程)与每个事件对应。
如果让控件对象响应事件,就把
代码写入这个事件过程之中。
对象所识别的事件类型多种多样,但多数事件类型是大多数控件所共有的。
例如,大多数对象都能识别 click 事件,如果单击窗体,则执行窗体的单击事件过程中的
代码;如果单击命令按钮,则执行命令按钮的 click 事件过程中的
代码。
每种情况中的实际
代码几乎完全不一样。
以下是事件驱动应用程序中的典型事件序列: 启动应用程序,装载和显示窗体。
窗体 (或窗体上的控件)接收事件。
事件可由用户引发(例如键盘操作或数鼠标点击)、可由
系统引发(例如定时器事件),也可由
代码间接引发(例如当
代码装载窗体时的 load 。
事件) 如果在相应的事件过程中存在
代码,就执行
代码。
应用程序等待下一次事件。
许多事件伴随其它事件发生。
例如,在 Dblclick 事件发生时,MouseDownMouseup 和 click 事件也会发生。
3、创建
VB 应用程序的三个步骤 ⑴创建应用程序界面 ⑵设置属性 ⑶编写
代码 4、
VB 的程序设计是面向对象的可视化程序设计。
其方法是在窗体上放置可视化的对象然后对它们设置属性、触发事件和执行方法进行程序设计。
对象放置完毕后用户所见到的 5只是一个空壳,就像一台没有装任何软件的
计算机,必须给它赋予程序,才能完成一定的功能。
VB 程序贮存在模块中,模块分有窗体、类和标准模块三种类型。
每个模块包含有声明和过程。
窗体模块包含处理事件过程、通用过程及变量、常数等窗体级说明;标准模块应用程序内其他模块访问的过程和声明的容器;类模块中包含了建立新对象的程序。
5、窗体与基本输入、输出 在进行
VB 程序设计中,设计者并不需要自己编制
VB 程序
代码来生成图形界面。
VB提供了大量现成的图形控件和其他一些控件,例如所熟悉的菜单、命令按钮、对话框等,供 “画”给用户“堆砌”起来构造自己想象中的图形界面,因此几乎不用书写什么程序
代码,上几笔就可完成程序员的构思,获得应用程序的图形界面。
VB 应用程序图形界面的设计首先要从窗体开始,其他的一些控件基本上归属于窗体控件(很多是直接“画”在窗体上的),通常应把窗体定义成一个构成应用程序可见部分的窗口,而一个
VB 的应用程序应首先从设计窗体开始。
VB 应用程序设计过程中重要考虑的问题是应用程序与用户的交互,而窗体可以实现将输出信息提供给用户。
6、常用控件:在窗体上用于输入、输出信息的图形或文字符号称为控件。
为了方便用户开发应用程序,
VB 中提供了很多的控件,其中很多控件是 windows 本身的资源,如命令按钮、标签、文本框等,也有一些是为了增强用户界面,或是使用户界面美观实用而编制的ActiveX 控件。
1.5、
VB 与 API 函数:
VB 无疑是最先进的编程工具之一,但在涉及 windows 32 位系统的核心编程方面,譬如一些高级功能的实现上,它仍然显得有些力不从心,这需要我们充分利用
vb 的强大的 Windows API 函数调用能力来弥补。
作为一个编程初学者来说,API函数也许是一个时常耳闻却感觉有些神秘的东西。
单看它的复杂语法,就足令人望而生畏,但是任何事物在我们深入了解它之前,总是会有这种感觉的。
其实我们应该把 API 函数的来龙去脉搞清楚,破除对 API 函数的畏惧,使它成为我们编程的好助手。
大家可能在许多书上看到过 API 的英文全称Application Programming Interface,WIN32 API 也就是 MicrosoftWindows 32 位平台的应用程序编程接口。
对这个定义的理解,需要追溯到操作系统的发展历史上,当 WINDOWS 操作系统开始占据主导地位的时候,开发WINDOWS 平台下的应用程序成为人们的需要。
而在 WINDOWS 程序设计领域处于发展的初期,WINDOWS 程序员所能使用的编程工具唯有 API 函数,这些函数是 WINDOWS 提供给应用程序与操作系统的接口,他们犹如“积木块”一样,可以搭建出各种界面丰富,功能灵活的应用程序。
所以可以认为 API 函数是构筑整个 WINDOWS 框架的基石,在它的下面是 WINDOWS 的操作 (配图 1)系统核心,而它的上面则是所有的华丽的 WINDOWS 应用程序。
Windows 应用程序 Win32Api 函数(应用程序接口) Windows 操作系统底层 6 图1 但是,那时的 WINDOWS 程序开发还是比较复杂的工作,程序员必须熟记一大堆
常用的API 函数,而且还得对 WINDOWS 操作系统有深入的了解。
然而随着软件技术的不断发展,在WINDOWS 平台上出现了很多优秀的可视化编程环境,程序员可以采用“即见即所得”的编程方式来开发具有精美用户界面和功能强大的应用程序。
这些优秀可视化编程环境操作简单、界面友好(诸如
VB、VC、DELPHI 等),在这些工具中提供了大量的类库和各种控件,它们替代了 API 的神秘功能,事实上这些类库和控件都是构架在 WIN32 API 函数基础之上的,是封装了的 API 函数的集合。
它们把常用的 API函数的组合在一起成为一个控件或类库,并赋予其方便的使用方法,所以极大的加速了WINDOWS 应用程序开发的过程。
有了这些控件和类库,程序员便可以把主要精力放在程序整体功能的设计上,而不必过于关注技术细节。
实际上如果我们要开发出更灵活、更实用、更具效率的应用程序,必然要涉及到直接使用 API 函数,虽然类库和控件使应用程序的开发简单的多,但它们只提供 WINDOWS 的一般功能,对于比较复杂和特殊的功能来说,使用类库和控件是非常难以实现的,这时就需要采用API 函数来实现。
这也是 API 函数使用的场合,所以我们对待 API 函数不必刻来研究每一个函数的用法,那也是不现实的能用的到的 API 函数有几千个呢。
正如某位人士所说:API 不要去学,在需要的时候去查 API 帮助就足够了。
在
VB 中声明 API 函数有两种方法:如果我们只在某个窗体中使用 API 函数,我们可以在窗体
代码的 General 部分声明它: 声明的语法是: Private Declare Function ... Private Declare Sub..... 这里必须采用 Private 声明,因为这个 API 函数只能被一个窗体内的程序所调用。
如果我们的程序有多个窗体构成,而且我们需要在多个窗体中使用同一个 API 函数,就需要在模块中声明了。
先添加一个模块,具体方法为: 选 在设计程序时, “project”菜单项下的子菜单项“AddMoudle” 然后采用如下语法声明: Public Declare Function.... Public Declare Sub.... Public 声明的含义是把 API 函数作为一个公共函数或过程,在一个工程中的任何位置(包括所有的窗体和模块)都能直接调用它。
声明完毕我们就能在程序中使用此 API 函数了。
可采用以下几种方式使用 API 函数,以 SetWindowPos 函数为例: 7 (1)忽略函数返回值的调用: SetWindowPos Form1.hWnd -2 0 0 0 0 3 注意此时函数的参数是不加括号的。
(2)Call 方法调用: Call SetWindowPosForm1.hWnd -2 0 0 0 3 注意这里需要加上括号,但我们不取回函数的返回值。
(3)取得函数返回值的调用: MyLng SetWindowPosForm1.hWnd -2 0 0 03 此时需要加上括号,而且我们必须事先定义一个变量(变量的类型与函数返回值类型相同)来存储 API 函数的返回值。
几个
问题的说明: (1)声明中的 Lib 和 Alias 是怎么回事 一般情况下 WIN32API 函数总是包含在 WINDOWS 系统自带的或是其它公司提供的动态连接库 DLL 中,而 Declare 语句中的 Lib 关键字就用来指定 DLL(动态连接库)文件的路径,这样
VB 才能找到这个 DLL 文件,然后才能使用其中的 API 函数。
如果我们只是列出 DLL 文件名而不指出其完整的路径的话,
VB 会自动到.EXE 文件所在目录、当前工作目录、WINDOWSSYSTEM 目录、WINDOWS 目录下搜寻这个 DLL 文件。
所以如果所要使用 DLL 文件不在上述几个目录下的话,我们应该指明其完整路径。
Alias 用于指定 API 函数的别名,如果我们调用的 API 函数要使用字符串(参数中包含String 型)的话,Alias 关键字是必须的。
这是因为在 ANSI 和 Unicode 字符集中同一 API函数的名称可能是不一样的,为了保证不出现声明错误,我们使用 Alias 关键字指出 API函数的别名,一般来说在 WIN9X 平台下我们把 API 函数名后加一个大写 A 作为别名即可。
(2)常见的 API 参数类型的说明 API 函数的参数中最常见的是长整 Long 型数据类型,例如 API 中的句柄、一些特定的常量、函数的返回值都是此类型 的值;另外几种常见的参数类型有:整型 Integer、Byte型、String 型等。
(3)声明中的 ByVal 是作什么用的 这跟
VB 的参数传递方式有关,在默认情况下
VB 是通过地址传递方式传递函数的参数、而有些 API 函数要求必须采用传值方式来传递函数参数(这两种参数传递方式是不同的,前 。
这样就会发生错误,解决的办法是在者传递的是一个指针,而后者要求是参数真实的值)API 函数参数声明的前面加上 ByVal 关键字,这样
VB 就采用传值方式传递参数了。
(4)怎样得到完整的 API 函数声明
VB 自带了 API 文本查看器 API TEXT VIEWER,我们可以在其中找到 API 函数的完整声明,然后把它粘贴到程序中即可。
了解了以上有关
VB 的基础知识,我们现在就可以开始着手运用
VB 进行程序设计了。
第二章 汉字拼音首字母获取程序的开发 82.1 程序设计思路 前面已叙述过,汉字拼音的首字符,可以在数据库中作为某一关键字段(如:商品的名称、客户单位的名称等)的辅助查询字段来简化查询过程中的输入问题。
也就是说,用户只要输入需要查找的汉字拼音的首字符, 就能很快定位到要查找的记录,当要查找的字数在 4、5 个以上时,其重码率还是很低的。
但是,如何获得汉字拼音的首字符呢?我们总不能让用户输入完汉字后再输入一遍拼音首字符吧,这项工作当然需要我们编程来实现。
提起将汉字转化为拼音,大家可能以为这是一个复杂的问题,比如将拼音输入法的码表文件进行逆转换,再根据汉字来查询拼音等等。
其实我们需要的只是汉字拼音的首字符,问题远没有这样复杂。
下面我就把用
VB6 实现这一功能的方法介绍如下。
我们知道,在 GB 2312-80 中收集了 7445 个汉字和图形符号,排列在 94×94 的二维表中。
在这个表中行称为区,列称为位,由区和位构成汉字的区位码。
常用汉字在 16 区至55 区,并按拼音的顺序排列。
计算机的操作系统以内码来表示和处理汉字,内码与区位码的关系为: 汉字的内码汉字的区位码ampHA0A0 对于拼音首字符为“a”的第一个汉字在 16 区 1 位,用十六进制表示为ampH1001,其内码我们可计算出为ampHB0A1,拼音首字符为“a”的最后一个汉字在 16 区 36 位,用十六进制表示为ampH1024,其内码为ampHB0C4 ,因此所有内码在ampHB0A1 至ampHB0C4 之间的汉字,其拼音的首字符都.