论已经越来越少。
窗体控件的增加和改变可以用拖放技术实现。一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序[4]。举个例子来说:窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。
VB的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。
VB的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。
VB使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。和有些语言不一样,VB对大小写不敏感,但是能自动转换关键词到标准的大小写状态,以及强制使得符号表入口的实体的变量名称遵循书写规则。默认情况下字符串的比较是对大小写敏感的,但是可以关闭这个功能。
VB使得大量的外界控件有了自己的生存空间。大量的第三方控件针对VB提供。VB也提供了建立、使用和重用这些控件的方法,但是由于语言问题,从一个应用程序创建另外一个并不简单。
2.1.2 编辑本段属性、方法和事件
在 Visual Basic 中,可以通过属性、方法和事件来说明和衡量一个对象的特征。
1)、事件(Event) 事件是指发生在某一对象上的事情。事件又可分为鼠标事件和键盘事件。例如,在命令按钮(Command Button)这一对象上可能发生鼠标单击(Click)、鼠标移动(Mouse Move)、鼠标按下(Mouse Down)等鼠标事件,也可能发生键盘按下(Key Down)等键盘事件。总之,事件指明了对象"什么情况下做?",常用于定义对象发生某种反映的时机和条件。
2)、方法(Method) 方法是用来控制对象的功能及操作的内部程序。例如,人具有说话、行走、学习、睡觉等功能,在visual Basic中,对象所能提供的这些功能和操作,就称作"方法" [5]。以窗体为例,它具有显示(show)或隐藏(hide)的方法。总之,方法指明了对象"能做什么?",常用于定义对象的功能和操作。
3)、属性(Property) 属性是指用于描述对象的名称、位置、颜色、字体等特征的一些指标。可以通过属性改变对象的特性。有些属性可以在设计时通过属性窗口来设置,不用编写任何代码;而有些属性则必须通过编写代码,在运行程序的同时进行设置。可以在运行时读取和设置取值的属性成为读写属性,只能读取的属性成为只读属性。总之属性指明了对象"是什么样的?",常用于定义对象的外观。
2.1.3 对象与类
1)、对象(Object) Visual basic 具有"面向对象"的特性,Visual Basic 应用种程序的基本单元是对象,用 Visual Basic 编程就是用"对象"组装程序。这种"面向对象"的编程方法与传统的全部用代码编制程序的方法有很大区别,就像用集成电路芯片组装电视机和用三极管,二极管组装电视机的区别一样。显然,"面向对象"的编程方法比传统的编程方法更简单,更方便,并且编写出的程序也更加稳定。因此,"对象"可以被看做 Visual Basic 程序设计的核心。
在 Visual Basic 程序设计中,对象中还可以包含头,手,腿,脚等部位,其中的每个部位又可以单独作为作为被研究的对象。在 Visual Basic 程序设计中,整个应用程序就是一个对象,应用程序中又包含着窗体(Frame),命令按钮(Command),菜单(Menu)等对象。
2)、类(Class) 在 Visual Basic 中,对象是由类创建的,因此对象可以说是类的具体实例,这就好比是蛋糕和做蛋糕的模具之间的关系。
各种不同的对象分属于各种不同的种类。同一类对象可能具有一些不同的特征(或是说同一类对象不一定具有完全相同的特性);具有某些相同的特性的对象,不一定是同一类对象,这就好比是人和猴子虽然都有身高、性别等特征,但二者之间还存在着智商、语言等特性差异,这两个对象之间的特性相差很多,根本就不能算是同一类对象。而男人和女人,虽然有着性别、生理等方面的差异,但他们绝大部分特性相同,可以算是同一种类。由此,可以归结为一句话:同一类对象的绝大部分特性相同。
2.2 Visual Basic 的局限性
Visual Basic 语言具有不支持继承、无原生支持多线程、异常处理不完善等三项明显缺点,使其有所局限性。(此些缺点皆已在 VB.NET 获得改进)
1)、不支持继承 VB5 和 VB6 都是基于对象的编程语言,但是不包含继承特性。VB 中提供了特殊的类的功能,但是还是不能满足程序员的需求。VB.NET 已包含了所有面向对象的特性。
2)、无原生支持多线程 Visual Basic 对于多线程无原生支持,只能通过 Windows API 的调用实现。VB.NET 已支持多线程技术。
3)、异常处理不完善 Visual Baisc 中内置异常处理,即使未写异常处理代码,一旦用户出错也会弹出一个明确写出出错原因对话框,接着程序终止。
Visual Basic 中可以使用 Err.Raise 抛出异常。对系统及用户抛出的异常的处理常用两种模式:一是使用 On Error Resume Next 处理错误;另一种是使用 On Error Goto 将运行引入错误处理代码。但相对 C++ 等语言而言,这样的异常处理破坏了代码的结构。 VB.NET 已支持更佳的异常处理机制。
2.3 基于WMI的计算机管理技术的实现
基于结合WMI和WEB服务技术来获取远程计算机信息、远程控制计算机及具体的实现方法,其它的管理功能如监视应用程序的运行状况、管理和配置应用程序等.均可采用类似的方法实现。
2.3.1 使用WMI获取远程计算机信息
现在的计算机以及网络组成十分复杂,例如系统硬件方面就有主板、硬盘、网卡等;软件方面有操作系统、系统中安装的软件、正在运行的进程等;网络方面有域、工作组等等,对这些信息的收集和数据的处理是现代计算机管理中非常重要的任务。WMI的功能十分强大,可以管理windows的方方面面,从常见的文件操作到硬件管理,都可以通过WMI来实现。以下介绍笔者使用WMl和.NET框架一起来获取远程计算机软硬件的实现方法。
首先需要引入System.Management命名空间。在.NET中,使用System.Management命名空间,通过对class的操作,可以查询系统软硬件的信息。此命名空间是.NET框架中的WMI命名空间,它提供的类对象为访问各种管理对象提供了面向对象的编程接口,并包括下列支持WMI操作的第一级类对象:
(1)ManagementObject或ManagementClass:分别为单个管理对象或类;
(2)ManagementEventWatcher:用于预订来自WMI的事件通知:
(3)ManagementQuery:用作所有查询类的基础;
(4)ManagementObjectSearcher:用于根据指定的查询或枚举检索ManagementObject或ManagementClass对象的集合。
System.Management类的使用编码范例对.NET框架环境很适合,并且WMI在任何适当的时候均使用标准基框架。应用程序和服务可以通过使用从ManagementObjectSearcher和ManagementQuery派生的类,查询其感兴趣的管理信息(例如在磁盘上还剩多少可用空间、当前CPU利
上一篇:
毕业设计(论文)考核表(基于VC++的虚拟仪器控件的设计)(2003doc)
下一篇:
采用VC的伺服电机控制毕业论文(2003doc)