请简述工程文件和窗体文件的区别?

请简述工程文件和窗体文件的区别?,第1张

工程文件和窗体文件的区别为:性质不同、包含不同、连接不同。

一、性质不同

1、工程文件:工程凳睁蠢文件是用来把所有文件整合在一起用的文件,即一个工程文件代表一个项目。

2、窗体文件:窗体文件是运行程序时看到的窗体。

二、包含不同

1、工程文件:工程文件包括基本模块文件 (.bas)和窗体模块文件(.frm)。

2、窗体文件:窗体文件属于工程文件的一部分。

三、连接不同

1、工程文件:工程文件通过对窗体文件的引早销用,将包含的每一个窗体文件的内容连枣陪接在一起。

2、窗体文件:窗体文件不能直接与其他的窗体文件连接在一起。

VB工程资源管理器窗口包含的文件类型:

一个VB工程共包含七种类型的文件:

1、项目文件 *.vbp:该文件包含与该工程有关的全部文件和对象的清单。

2、窗体文件 *.frm:该文件包含亩体及控件属性设置。窗体级的变量及外部过程的声明,事件程及用户自定义过程每一个窗体都有一个窗体文件。

3、模块文件 *.bas:该文件包含模块级的变量和外部过程的声明,用户自定义的可供本工程内各窗体调用的过程。该文件可选。

4、定制控件 *.ocx:该文件可以添加到工具箱并在窗体中使用。

5、类模块 *.cls:用于创建含有属性和方法的用户自己的对象。该文件可选。

6、资源文件 *.res:包含不必重新编代码就可以使用的位图、字符串和其他数据。该文件可选。

7、定制控件2 *.dll:当窗体或控件含有二进制属性(图片、图标等)将窗体文件保存时,系统自动产生同名的二进制文件。

扩展资料:

VB语言的特征衡量:

在 Visual Basic 中,可通过属性、方法和事件来说明和衡量一个对象的特征。

1、事件(Event)

事件是指发生在某一对象上的事情。事件又可分为鼠标事件和键盘缓粗事件。

例如,在命令按钮(Command Button)这一对象上可能发生鼠标单击(Click)、鼠标移动(Mouse Move)、鼠标按下(Mouse Down)等鼠标事件,也可能发生键盘按下(Key Down)等键盘事件。

总之,事件指明了对象“什么情况下做?”,常用于定义对象发生某种反映的时机和条件。

2、方法(Method)

方法是用来控制对象的功能及 *** 作的内部程序。例如,人具有说话、行走、学习、睡觉等功能,在visual Basic中,对象所能提供的这些功能和 *** 作,就称作“方法”。

以窗体为例,它具有显示(show)或隐藏(hide)的方法。总之,方法指明了对象“能做什么?”,常用于定义对象的功能和 *** 作。

3、属性(Property)

属性是指用于描述对象的名称、位置、颜色、字体等特征的一些指标。可以通过属性改变对象的特性。

有些属性可以哗哪隐在设计时通过属性窗口来设置,不用编写任何代码;而有些属性则必须通过编写代码,在运行程序的同时进行设置。

可以在运行时读取和设置取值的属性成为读写属性,只能读取的属性成为只读属性。总之属性指明了对象“是什么样的?”,常用于定义对象的外观。

4、对象与类

对象(Object)

Visual Basic.NET 具有“面向对象”的特性,Visual Basic.NET 应用种程序的基本单元是对象,用 Visual Basic.NET 编程就是用“对象”组装程序。

这种“面向对象”的编程方法与传统的全部用代码编制程序的方法有很大区别,就像用集成电路芯片组装电视机和用三极管,二极管组装电视机的区别一样。

显然,“面向对象”的编程方法比传统的编程方法更简单,更方便,并且编写出的程序也更加稳定。因此,“对象”可以被看作 Visual Basic.NET 程序设计的核心。

在 Visual Basic.NET程序设计中,对象中还可以包含头,手,腿,脚等部位,其中的每个部位又可以单独作为作为被研究的对象。在 Visual Basic.NET程序设计中,整个应用程序就是一个对象,应用程序中又包含着窗体(Form),命令按钮(Command),菜单(Menu)等对象。

5、类(乱厅Class)

在 Visual Basic.NET中,对象是由类创建的,因此对象可以说是类的具体实例,这就好比是蛋糕和做蛋糕的模具之间的关系。

各种不同的对象分属于各种不同的种类。同一类对象可能具有一些不同的特征(或是说同一类对象不一定具有完全相同的特性);

具有某些相同的特性的对象,不一定是同一类对象,这就好比是人和猴子虽然都有身高、性别等特征,但二者之间还存在着智商、语言等特性差异,这两个对象之间的特性相差很多,根本就不能算是同一类对象。

而男人和女人,虽然有着性别、生理等方面的差异,但他们绝大部分特性相同,可以算是同一种类。由此,可以归结为一句话:同一类对象的绝大部分特性相同。

参考资料来源:百度百科-VB项目文件

参考资料来源:百度百科-Visual Basic

  delphi 开发的应用中 每一个窗体都有一个对应的窗体文件( dfm) 用来记录该窗体的属性以及窗体上所有控件的属性 以便在窗体关闭后能准确地重新生成窗体 几乎所有的DELPHI参考书都没铅带有提到过该文件的具体情况 偶尔提到 也都泛泛而谈 因为窗体文件是二进制文件 只有在DELPHI提供的编辑环境中才能看到它的本来面目 对其进行 *** 作可能会出现不可预知的错误 而且在大多数情况下 确实没有修改的必要 而本文谈到的和窗体文件密切相关

要利用窗体文件 首先必须了解该类型文件的结构 窗体文件的结构很简单 朋友们可以生成一个窗体 随便放上一些控件 存盘后打开Unit dfm文件 就可以看到窗体文件是由关键字"object"和"end"构成的代码段 基本结构如下

object  控件名 类名属性 =属性值属性 =属性值…end

并且支持嵌套 Delphi在记录控件属性时 只记录修改过的属性 举一个例子 比如对一个标签控件(label )的缺省描述如下

object Label : TLabelLeft = Top = Width = Height = Caption = &# Label &# End

记录的五个属性都是随开发者拖放的位置和顺序不同而变化的 其它属性由于没有修改启虚过 都是缺省值 所以不必记录

窗体文件是有序的 它的有序性表现如下

object 窗体名 Tform窗体属性 =属性值窗体属性 =属性值 // 以下是TgraphControl类型的控件object 控件名 类名控件属性 =属性值控件属性 =属性值 endobject 控件名 类名控件属性 =属性值控件属性 =属性值 end // 以下是TwinControl类型的控件object 控件名 类名控件属性 =属性值控件属性 =属性值 endobject 控件名 类名控件属性 =属性值控件属性 =属性值 end // 以下是其它类型的控件object 控件名 类名控件属性 =属性值控件属性 =属性值 end end

在同一种类型的控件中 各控件排列的先后顺序和它被拖放到窗体上的先后顺序相同 这个顺序是可以人为修改的 我们正是通过修改这个顺序 来实现控件的数组化悄激燃 下面将详细介绍

熟悉VB的朋友肯定知道在VB中可以通过控件拷贝实现控件的数组化 而DELPHI中则没有这种功能 Delphi中可以使用Components Controls两个控件数组在一定程度上模拟控件的数组化 比如

for I := to ControlCount do  if (Controls[I] is Tlabel) then(Controls[I] as Tlabel) Caption := &# Test&#

这段代码的功能是将窗体上所有Label的Caption属性设为&# Test&# 这是一种非常有用的方法 大家如果不太熟悉可以参考delphi帮助作进一步了解 这种方法有很多局限 最明显的是我们并不知道Controls[i]或Components[i]到底代表哪一个控件 只能用遍历的方法进行筛选 这不仅影响了程序执行的效率 也带来编程上的繁琐

其实 Controls和Components中控件的排列顺序和对应的窗体文件( dfm)中控件描述代码段的排列顺序是相同的 前面我们谈到窗体文件是可以进行适当修改的 也就是说 我们可以根据需要调整窗体文件中控件描述代码段的排列顺序 让Controls和Components这两个控件数组全在掌握之中 这样我们就能清楚知道Controls[I]或Components[I]具体代表的是哪一个控件 下面举例说明

比如 我们想让窗体Form 上的所有Tbutton灰化 最简单的方法是一句一句的编写代码

Button Enabled := FalseButton Enabled := False … …

如果Tbutton数量很多 代码就变得很冗长 于是我们采用一个循环来实现

for I := to ControlCount  do    if Controls[I] is Tbutton Then(Controls[I] as Tbutton) Enabled := False

lishixinzhi/Article/program/Delphi/201401/30261


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12243169.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存