CBuilder开发环境_第1页
CBuilder开发环境_第2页
CBuilder开发环境_第3页
CBuilder开发环境_第4页
CBuilder开发环境_第5页
已阅读5页,还剩138页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第1 1章章 C+BuilderC+Builder开发环境开发环境 第第1章章 C+Builder开发环境开发环境 1.1 C+Builder概览概览 1.2 C+语言简介语言简介 1.3 C+Builder集成开发环境集成开发环境 习题习题 第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.1 C+Builder概览概览 C+Builder 是Borland(Inprise)公司开发的Windows下可视化的C+编程环境,它常被简称为BCB(分别取Borland、C+、Builder的第一个字母)或CB。BCB不仅功能强大,而且学习简单、使用方便,深受软件开发人员的

2、喜爱。C+Builder目前的最新版本是6.0版。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.1.1 Windows环境下的快速开发工具 有一句话在软件开发人员之间流传很广,并且在流传过程中形成了若干不同的版本。这句话的上半句是“真正的程序员用C+”,下半句则是“聪明的程序员用X”。X在这句话的不同版本中分别为VB、Delphi、PB等。有人觉得对于这种“X”王婆卖瓜式的自夸,无需当真,但依笔者看却未必。因为VB、Delphi、PB等开发工具之间有一个共同之处,即它们都是RAD(Rapid Application Development,快速开发工具)。 第第1

3、1章章 C+BuilderC+Builder开发环境开发环境 因此,若站在比较公正的立场来说,这后半句应该是“聪明的程序员用RAD”。此说法若能成立,那么一个必然的推论就是:“真正的并且聪明的程序员应该用基于C+的RAD”。按照该标准选择编程环境,就目前来说,无疑应该首选Borland公司的C+Builder。第第1 1章章 C+BuilderC+Builder开发环境开发环境 传统的“软件工程”提倡“先设计,后编程”,设计一旦完成,则不允许做过多修改。这种设计原则固然有其合理的一面,但严重制约了开发效率。对于某些开始时对需求并不十分清楚的应用项目,若按此办理则往往将开发人员逼入窘境。“快速原

4、型法”或RAD则反其道而行之,它把设计看成需经多次反复才能完成的工作:对一个项目的初步分析完成后,即据此开发出一个程序“原型”;然后与用户一起对该“原型”进行评价,找出不足,修改设计后再产生程序。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 这一过程可重复多次,直到所开发的系统达到用户要求为止。但要有效实现RAD,必须拥有优良的编程环境和代码生成工具,由于BCB具有可视化、面向对象等特性,特别适合作为Windows下企业级应用的RAD开发环境使用。目前,称得上RAD的产品有VB、Delphi、C+Builder、PB、VFP等。相对于VB等“解释型”的语言来说,Del

5、phi、BCB 这些以“编译型”的语言为基础的RAD编程环境效率较高,功能也更强大。第第1 1章章 C+BuilderC+Builder开发环境开发环境 作为一个RAD开发环境,BCB 对Windows和Internet上的各种流行技术都提供了充分的支持,C+Builder 6.0 在先前版本基础上又增加了许多新的功能和特性。它具有很强的图形、图像和多媒体处理功能;对Windows下的OLE、COM、ActiveX技术提供了很好的支持;在数据库编程方面,BCB提供了各种连接方案以及多层分布式数据处理等先进技术;在Internet和Intranet编程方面,BCB提供了Socket组件和Inte

6、rnet Express、Web Snap等技术。 BCB的另一优点是具有极强的兼容能力,它可以编译连接Turbo C、Borland C+、VC+、Delphi等工具开发的源代码或目标模块。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.1.2 C+编译器 作为第四代编程环境,BCB具有一定的代码自动生成的能力,但仍需人工编写部分程序代码,这些代码必须用C+语言写成。因此,BCB可被看作是Windows下一个功能强大的C+编译器,它支持ANSI C+ 标准并在使用部件技术等方面作了扩充。BCB具有编译速度快等优点,经BCB编译后产生的目标文件尺寸小、效率高,可直接在

7、Windows环境下运行。第第1 1章章 C+BuilderC+Builder开发环境开发环境 C+ 是在C语言基础上扩充而成的一种编程语言,它具有C语言紧凑、高效等优点并支持面向对象程序设计的技术,本书第2章将简单介绍C+语言和面向对象程序设计。对已初步掌握C语言的读者来说,只需对面向对象程序设计的有关概念稍有了解,就能使用BCB编写简单程序了。当然,要使用BCB编写复杂的、高质量的程序,就必须对所使用的C+语言的各种特性有深刻理解。我们认为,掌握C+ 和面向对象程序设计是一个从实践中学习的循序渐进的过程,本书会提供一个很好的起点。 第第1 1章章 C+BuilderC+Builder开发环

8、境开发环境 1.1.3 C+Builder的安装和启动 C+Builder 6.0有普通版和Client/Server版,通常用光盘安装。它对硬件的最低要求并不高,但为了使用效果好一点,我们建议采用如下基本硬件配置: (1) CPU为Pentium II 350以上; (2) 内存128 MB以上; (3) 硬盘总容量10 GB以上,可用空间1 GB以上,其中安装BCB约用去600 MB以上。第第1 1章章 C+BuilderC+Builder开发环境开发环境 BCB应安装在32位的Windows上,它们包括Windows 95、Windows 98、Windows 2000、Windows

9、NT 4.0、Windows Me以及Windows XP等。 执行光盘上的Setup程序进行安装,主要步骤有: (1) 按提示输入软件的序列号和密码; (2) 选择安装方式,安装方式有Typical、Compact和Custom,当硬盘空间充足时可选Typical,否则选Compact,有经验的用户也可选Custom;第第1 1章章 C+BuilderC+Builder开发环境开发环境 (3) 选择安装目录,一般可采用由安装程序建议的目录。 安装完毕后,在“开始”菜单的“程序”项下新添了一项“Borland C+Builder 6”,点击该项即能启动C+Builder 6.0。启动后的界面如

10、图1-1所示。第第1 1章章 C+BuilderC+Builder开发环境开发环境 图 1-1 启动BCB后的画面第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.1.4 一个简单的程序 为了让读者尽早了解在BCB下编程是怎么回事,我们在本节给出一个简单的“Hello,World!”程序。该程序运行时显示一个窗口,窗口内有一个命令按钮,当按钮被点击时,窗口的标题显示为“Hello,World!”。 下面,我们详细给出在BCB下编制该程序的每一步。 (1) 启动BCB,出现如图1-1所示的界面。此时编程环境中已存在一个应用程序的框架,显示在该图右下方的标题为Form1的一

11、个空白的窗口即是该应用程序的窗口,习惯上我们称它为窗体。第第1 1章章 C+BuilderC+Builder开发环境开发环境 (2) 点击控件面板上按钮图案选取按钮控件,然后在应用程序窗体中选择适当位置将按钮放到该空白窗体上,如图1-2和图1-3所示。 (3) 在窗体内选中按钮,然后在对象检阅器内编辑按钮Button1属性。如图1-4所示,我们把按钮的Caption属性改为“Hello”。这使得窗体中按钮的标题也变为“Hello”。第第1 1章章 C+BuilderC+Builder开发环境开发环境 图1-2 点击面板上按钮控件第第1 1章章 C+BuilderC+Builder开发环境开发环

12、境 图1-3 将按钮放入窗体 第第1 1章章 C+BuilderC+Builder开发环境开发环境 图1-4 修改按钮的标题 第第1 1章章 C+BuilderC+Builder开发环境开发环境 (4) 双击窗体中标题为Hello的按钮,BCB自动为该按钮的单击事件建立了相应的处理程序(方法)TForm1:Button1Click的框架,此时代码编辑窗口被激活,文本插入点处有如下代码: void _fastcall TForm1:Button1Click(TObject *Sender) 这正是TForm1:Button1Click事件代码的框架。在一对大括号内可以由用户输入C+的代码,这些代

13、码将在该按钮被单击(Click)时执行。在本例中,我们输入:第第1 1章章 C+BuilderC+Builder开发环境开发环境 Form1-Caption=Hello, World!; 即使得TForm1:Button1Click事件有如下代码: void _fastcall TForm1:Button1Click(TObject *Sender) Form1-Caption=Hello,World!;第第1 1章章 C+BuilderC+Builder开发环境开发环境 (5) 点击位于BCB界面左上方的工具栏上标有绿色箭头的那个按钮,就可以编译、运行该程序了。若一切顺利,程序运行后,按下“

14、Hello”按钮,窗口的标题就会变为“Hello,World!”,如图1-5所示。 至此,我们的第一个Windows应用程序已编制完成,当然这个程序的功能太简单了。但请记住,我们有了一个很好的程序框架,在此基础上增加一点功能并不是难事。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 最后,我们还要介绍如何将已完成的程序保存。BCB将一个完整的应用程序称为项目,它由若干文件组成,保存一个项目也就是要将该项目的所有文件存盘。第第1 1章章 C+BuilderC+Builder开发环境开发环境 图1-5 Hello程序运行时的画面第第1 1章章 C+BuilderC+Buil

15、der开发环境开发环境 图1-6 保存单元文件 第第1 1章章 C+BuilderC+Builder开发环境开发环境 通常,应该为项目建立一个文件夹用于保存该项目的文件。我们为“Hello”程序的项目建立的文件夹,可以取名为Hello。在BCB中执行菜单命令FileSave All。此时,会弹出如图1-6所示的保存单元文件对话框。在标有“保存在”标签的组合框内选中Hello文件夹,在“文件名”文本框内更改文件名,最后按“确认”按钮保存文件。由于Save All是保存项目的所有文件,因而一般会出现两次保存文件对话框:第一次,要求保存与程序主窗体Form1对应的代码单元文件,它的默认文件名是Uni

16、t1;第二次,要求保存项目文件,它的默认文件名是Project1(对于初学者,最好采用默认的文件名)。第第1 1章章 C+BuilderC+Builder开发环境开发环境 回到Windows下,看看Hello文件夹内有哪些文件。我们会发现至少有六个文件:Project1.bpr,Project1.cpp,Project1.res,Unit1.cpp,Unit1.dfm和Unit1.h。这些文件可看作是“Hello”项目的源文件,若我们在保存项目后再运行一次程序,就会发现Hello文件夹内又增加了四个文件:Project1.obj,Project1.exe,Project1.tds和Unit1.

17、obj。其中的Project1.exe可脱离BCB在Windows下运行,它的大小仅为25 KB。由于这四个文件可以通过编译生成,当磁盘空间紧缺时(例如,当需要保存到软盘时)可将它们删除,特别是Project1.tds文件,它的尺寸很大。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.2 C+语言简介语言简介 如前所述,BCB使用C+作为编程语言。C+语言是在C语言的基础上扩充而成的,它具有C语言紧凑、高效等优点并支持面向对象程序设计技术。本书假定读者已具有使用C语言编程的基础知识,我们在此基础上介绍学习本书时所需的C+知识。第第1 1章章 C+BuilderC+Bu

18、ilder开发环境开发环境 1.2.1 面向对象程序设计 自20世纪80年代以来,面向对象的技术引起了计算机界的极大关注。随着面向对象程序设计语言的渐趋成熟,作为一种新的程序设计风格,其应用也得到了迅速发展。 面向对象是一种对应于真实世界概念化的抽象思维方法,面向对象方法的基本出发点就是按照人类认识世界的方法和思维方式来分析和解决问题的。在面向对象的系统中,对象(Object)是一个封装了数据属性和操作行为的实体。数据描述了对象的状态,操作可操纵私有数据,改变对象的状态。对象内的操作通常叫做方法,对象之间进行通讯的一种构造叫做消息。第第1 1章章 C+BuilderC+Builder开发环境开

19、发环境 在面向对象系统中,人们并不是逐个地描述各个具体的对象,而是将注意力集中于具有相同特性的一类事物,抽象出这样一类事物的共同结构和行为。类(Class)是对对象的抽象及描述,是具有共同属性和操作的多个对象的相似特性的统一描述体,类中的每个对象都是该类的实例。由于类描述了数据结构(对象属性)、算法(方法)和外部接口(消息协议),因此,类提供了完整的解决问题的能力。第第1 1章章 C+BuilderC+Builder开发环境开发环境 在类的描述中,每个类要有一个名字,要能表示一组对象的共同特征,还必须给出一个生成对象实例的具体方法。类不是孤立的,类与类之间有各种关系。其中,特别重要的是层次关系

20、,即可以有父类与子类,它们之间有派生和继承的关系,继承关系具有传递性。在收到消息时,对象要予以响应。不同的对象收到同一消息可产生完全不同的结果,这一现象叫做多态,多态的实现依赖于继承性。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 要设计一个有意义的类并非易事,但一旦设计完成,就能在程序中被重复使用。因此,一个成熟的面向对象的编程环境往往会提供一组精心设计而成的类供用户使用,以提高软件开发的效率和质量,一般称这样的一组类为类库。C+Builder提供的类库名为VCL,而VC+则提供了一个叫做MFC的类库。第第1 1章章 C+BuilderC+Builder开发环境开发

21、环境 面向对象程序设计的概念提出来以后,某些公司和机构曾经开发出一些纯粹的面向对象设计语言,如Smalltalk、Ada等,但是由于种种原因,这些语言没能够广泛地流行起来。从本质上来讲,我们今天所广泛采用的面向对象的设计语言C+并不是一种纯粹的面向对象的设计语言。C+是C语言的一个超集,它既支持传统的面向过程程序设计,又支持面向对象程序设计,C+与C语言的这种兼容性是其成功的一个重要方面。第第1 1章章 C+BuilderC+Builder开发环境开发环境 C+由Rich Maseitti提出,它的创造灵感来源于当时计算机语言多方面成果的凝集,特别是BCPL和Simula67。C+的标准化工作

22、于1989年已开始,在支持面向对象特性的开发平台上,日趋进步和完善。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.2.2 C+语言对C语言在非面向对象方面的增强 C+作为一种混合语言,在面向对象及非面向对象这两个方面都对C语言进行了扩充或修订,使得它既适用于结构化程序设计,又能满足面向对象程序设计的要求。因而很快流行起来,成为当今面向对象程序设计的主要语言。 以下是C+对C语言在非面向对象方面的若干重要扩充。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1C+提供了单行注释方式在传统的C语言中C提供了块注释方式,其形式如下:/* explan

23、ation sentence */而在C+中,除了保留了块注释方式外,还增加了一种更为方便的单行注释方式,其形式如下:/ explanation sentence第第1 1章章 C+BuilderC+Builder开发环境开发环境 2更为灵活的变量说明 在传统的C语言中,局部变量的说明必须放在可执行的代码的前面。数据说明语句和可执行语句的混合将引起编译错误。而在C+中,可以在程序代码块的任何地方进行局部变量的说明。第第1 1章章 C+BuilderC+Builder开发环境开发环境 3结构、联合和枚举名可以直接作为类型名使用 在C语言中,对结构、联合和枚举类型进行定义后,要生成该结构、联合和枚

24、举类型的变量,必须在结构名前加上struct 。如对BankAccount结构的变量进行说明时使用如下形式: Btruct BankAccount a; 在C+中,说明方法可简化为: BankAccount a;/关键字struct不必要第第1 1章章 C+BuilderC+Builder开发环境开发环境 4枚举类型与整型的关系 在C语言中,枚举值与整型值之间可以相互转换使用。而C+的类型检查则比C要严格,枚举值将被自动转化为整型值使用,但将整型值转化为枚举值则需要强制类型转换,否则会出现编译错误。如下面的一段代码,在C语言中都是可以接受的,但某些语句在C+中则会引起错误。第第1 1章章 C+

25、BuilderC+Builder开发环境开发环境 enum name John,Mike,Rose,Joan;enum name person1=John; /正确enum name person2=person1; /正确enum name person3=1; /在C+中错误enum name person4=(enum name )1; /在C+中正确无名联合可以通过使用其中数据项的名字直接进行访问。第第1 1章章 C+BuilderC+Builder开发环境开发环境 5作用域限定运算符: 作用域限定运算符:用于对当前作用域之外的同名变量进行访问。如在下面的例子中,我们在局部变量var的

26、作用域内使用:var来实现对全局变量var的访问。第第1 1章章 C+BuilderC+Builder开发环境开发环境 #include int var;void main ( ) float var; var=3.14; :var=6; coutlocal variable var=varendl; coutglobal variable var=:varWidth=100; Edit1-Height=10;第第1 1章章 C+BuilderC+Builder开发环境开发环境 10内联函数(inline) C+提供了内联函数。使用内联函数可以节约函数调用时保留现场所需的系统开销,提高程序执行

27、效率。同时,由于内联函数的使用将增大程序的代码段,因此建议在充分权衡系统开销和程序代码段长度的关系后谨慎使用。第第1 1章章 C+BuilderC+Builder开发环境开发环境 11缺省函数参数 在C+的函数调用时,可以缺省函数的参数。但是要使用缺省函数参数,必须在函数定义时为该参数赋一缺省值,且所缺省参数的顺序只能是从右到左,不能随意缺省。请看下面的例子:第第1 1章章 C+BuilderC+Builder开发环境开发环境 int function (int a=0; int b=1; int c=2)以下函数调用都是合法的:function ( ); /等同于function (0,1,

28、2)function (12); /等同于function (12,1,2)function (12,13); /等同于function (12,13,2)function (12,13,14);而以下函数调用则是非法的:function ( ,13,14);function (12, ,14);第第1 1章章 C+BuilderC+Builder开发环境开发环境 12函数返回值 在C+中,任何说明为非void类型的函数都需要指定一个相应类型的返回值,否则在函数的编译时会产生警告错误。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.2.3 C+对于面向对象技术的支持

29、类和对象是面向对象技术的基石,因此,我们首先要解决的问题是如何用C+语言来描述类和对象。 让我们回忆一下C语言中的结构体这种复合数据类型,结构可把相关联的数据元素组合成一个统一体,它和类非常相似,其区别主要在于C的结构不含成员函数,而C+的类既能包含数据元素(即数据成员),又能包含方法(即成员函数)。 下面用C+定义了BankAccount(银行帐号)类,该类包含有两个数据成员和两个成员函数:第第1 1章章 C+BuilderC+Builder开发环境开发环境 class BankAccountprivate:float balance;unsigned accountNumber;publi

30、c:void deposit (float amount)balance+=amout;第第1 1章章 C+BuilderC+Builder开发环境开发环境 void withdraw (float amout) balance-=amout;float getbalance ( ) return balance; ;第第1 1章章 C+BuilderC+Builder开发环境开发环境 可以看出C+中定义类的语句确实同定义结构非常相像。我们使用了关键字class表示类,这里BankAccount是类名,在一对大括号中罗列了所有的数据成员和方法函数。关键字“private:”和“public:”

31、分别用于说明私有成员和公有成员,前者只允许在属于该类对象的方法内进行访问,后者则可被外部对象的方法访问。第第1 1章章 C+BuilderC+Builder开发环境开发环境 给BankAccount类生成静态对象实例的语句可以是: BankAccount BA1,BA2; 为了动态生成对象实例,我们必须使用指针和new操作符: BankAccount *BA3; BA3=new BankAccount; 如果详细介绍C+面向对象技术,可能需要半本书的篇幅,而且比较枯燥,对于学习本书的“基础篇”和“应用篇”,我们暂时只需要以上介绍的这些知识就可以了。在本书的“提高篇”将更深入地介绍C+和面向对象

32、的内容。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.2.4 VCL组件类 前面曾提及BCB开发环境为用户提供的类库被称为VCL(Visual Component Library),该类库非常适用于Windows下的快速开发。 在VCL 中首先定义了一个基类TObject,其它的类都是TObject的后代。所有的组件都是TComponent类的派生类,它们都能放在BCB的组件面板上供取用。组件中有一部分继承自TControl类的又常被称为控件,它们是可视的,有着大体相似的属性和方法。第第1 1章章 C+BuilderC+Builder开发环境开发环境 TForm类也

33、称为窗体类,它是应用程序的窗口。通常,在BCB的一个空白程序框架中,已存在着一个由系统生成的空窗体Form1。 由于C+中对象的数据成员的类型也可以是类,因此对象中可以含有成员子对象。主要用于包容成员对象的那种对象通常被称为“容器”。窗体中可以放入各种组件,因此,窗体也常被当成是容器。第第1 1章章 C+BuilderC+Builder开发环境开发环境 属性和事件概念是BCB对C+类的某种扩展和深化,为此BCB中引入了扩展关键字_property。属性是类中一种特殊的数据成员,对该成员的读写常伴随着一系列与Windows API调用有关的组件状态的改变。事件则是一种触发器,它通常与某种特定状态

34、(如接收到某个Windows消息)相联系。用户可以为事件编写代码,该代码只在上述的某种特定状态发生时被执行。 在1.1.4节的例子中,我们写代码Form1-Caption=Hello,World!,其中Caption即为类TForm的属性。双击按钮时出现的空白代码框架:第第1 1章章 C+BuilderC+Builder开发环境开发环境 void _fastcall TForm1:Button1Click(TObject *Sender) 即为Button1对象的OnClick事件的代码框架。 在BCB下编程,所要做的工作大部分都与VCL对象的属性与事件有关。由于VCL中有大量的组件,必须循序

35、渐进地学习它们的用法。如果读者能熟练使用多种VCL组件的属性与事件,就能成为一个Windows下的编程高手。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.2.5 BCB的字符串类型 传统的C语言中没有真正的字符串类型,只有字符数组或指针,因此使用中常带来不便。BCB采纳了Ansi C+中的AnsiString类,弥补了C的不足。此外,BCB中定义的TStrings等类型也非常有用。下面简单介绍这些类型的用法。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1AnsiString类 AnsiString类除了将一个长字符串作为它的数据成员外还提供

36、了操纵字符串的方法,并且能方便地与C的字符类型相转换。大部分编程语言都允许使用“+”号连接两个字符串,但在C中却不行,这会带来许多不便,好在AnsiString解决了这个问题。例如:第第1 1章章 C+BuilderC+Builder开发环境开发环境 AnsiString s1,s2,s3; s1=abc; s2=efg; s3=s1+d+s2; 是完全符合C+语法的。由于AnsiString的强大功能和具有与其它编程语言的兼容性,使得它在VCL类的属性和方法参数中被大量使用。第第1 1章章 C+BuilderC+Builder开发环境开发环境 AnsiString类提供了如下主要的方法函数:

37、 Length 返回AnsiString中的字符数。 IsEmpty 如果AnsiString为空,则返回true,否则返回false。 SubString 返回该AnsiString的子串。 c_str 将AnsiString转化为基本C语言的*char型。因为调用C或C+的函数时,参数的数据类型常常要求是char*,所以可使用该函数先将AnsiString转换为char *型,再进行调用。第第1 1章章 C+BuilderC+Builder开发环境开发环境 注意:AnsiString:c_str( )返回一个指向AnsiString对象内部字符串缓冲的指针,一旦使用该调用语句结束,这个指针

38、也就不再有效。 atoi 将数值型字符串转换为整数。 itoa 将整数转化为字符串。 AnsiCompare 将该字符串与指定的字符串比较,比较时区分大小写。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 2TStrings类 TSrings是另一个在VCL中被广泛使用的字符串类型,它可以将一段由若干行组成的文本保存在一个长字符串中。使用TStrings的方法可根据实际需要方便地在这一段文本中插入或删除行,或将其转换为其它字符串类型。VCL中TListBox类组件的Items属性和TMemo类组件的Lines属性都是TStrings类型的。 3TWideString类

39、TWideString类是用于与Windows OLE和非英文字符集等相兼容的字符串类型。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.2.6 BCB的通用函数 BCB编程环境下提供了一组通用函数,这些函数主要提供在各种基本数据类型之间进行转换、磁盘文件操作、字符串操作等功能,它们的使用都是比较简单的。下面介绍其中最常用的若干函数。 1IntToStr 函数 IntToStr函数原型为 AnsiString _fastcall IntToStr (int Value); 功能是将整型变量转换为字符串。第第1 1章章 C+BuilderC+Builder开发环境开发环

40、境 2StrToInt 函数StrToInt函数原型为int _fastcall StrToInt (const AnsiString S);功能是将字符串转换为整型变量。3FloatToStr 函数FloatToStr函数原型为AnsiString _fastcall FloatToStr (float Value);功能是将实数型变量转换为字符串。第第1 1章章 C+BuilderC+Builder开发环境开发环境 4StrToFloat 函数StrToFloat函数原型为float _fastcall StrToFloat (const AnsiString S);功能是将字符串转换为实

41、数型变量。第第1 1章章 C+BuilderC+Builder开发环境开发环境 5FloatToStrF函数 FloatToStrF函数原型为 AnsiString_fastcall FloatToStrF (long double value, TStringFloatFormat format, int precision, int digits); 功能是将实数型变量转换为指定格式的字符串。整型参数precision和digits分别指定小数部分的位数和字符串的长度。参数format可取值为sffGeneral、sffExponent、sffFixed、 sffNumber以及sffCu

42、rrency。第第1 1章章 C+BuilderC+Builder开发环境开发环境 6TimeToStr 函数TimeToStr函数原型为AnsiString _fastcall TimeToStr (System:TDateTime Time);功能是将当前日期和时间转换为字符串对象。 7UpperCase函数UpperCase函数原型为AnsiString _fastcall UpperCase (const AnsiString S);功能是将指定的AnsiString字符串转换为大写形式。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 8LowerCase 函数

43、LowerCase函数原型为AnsiString _fastcall LowerCase (const AnsiString S);功能是将指定的AnsiString字符串转换为小写形式。9IntToHex 函数IntToHex函数原型为AnsiString _fastcall IntToHex (int Value, int Digits); 功能是将整数转换为十六进制字符串。第第1 1章章 C+BuilderC+Builder开发环境开发环境 10FileExists函数 FileExists函数原型为 bool _fastcall FileExists (const System:Ans

44、iString FileName); 功能是测试指定的文件是否存在,如果存在,则返回true,否则返回false。第第1 1章章 C+BuilderC+Builder开发环境开发环境 11DeleteFile函数 DeleteFile函数原型为 bool _fastcall DeleteFile (const AnsiString FileName); 功能是删除指定的磁盘文件,如果操作成功,则返回true,否则返回false。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 12CreateDir函数 CreateDir函数原型为 bool _fastcall Crea

45、teDir (const AnsiString Dir); 功能是创建一个新的目录,如果操作成功,则返回true,否则返回false。 13DiskSize函数 DiskSize函数原型为 int _fastcall DiskSize (Byte Drive); 功能是返回指定磁盘的空间,操作失败时返回-1。参数Drive 取值为“0”,代表当前盘,取值为1,2,3,.时分别代表A,B,C,.盘。第第1 1章章 C+BuilderC+Builder开发环境开发环境 14DiskFree函数 DiskFree函数原型为 int _fastcall DiskFree (Byte Drive); 功

46、能是返回指定磁盘的剩余空间,操作失败时返回-1。参数Drive的用法与DiskSize函数中的用法相同。 15StrScan函数 StrScan函数原型为 char * _fastcall StrScan (const char * Str, char Chr); 功能是在指定的字符串中寻找特定的字符,并返回指向该特定字符在字符串中第一次出现位置的字符指针。若找不到该特定字符,则返回NULL。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 16StrRScan函数 StrRScan函数原型为 char * _fastcall StrRScan (const char *

47、 Str, char Chr); 功能与StrScan类似,但返回值是指向最后一次出现该特定字符处的指针。第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.3 C+Builder集成开发环境集成开发环境 本章介绍C+Builder 6.0应用程序集成开发环境(IDE)的各个组成部分及相关的操作。第第1 1章章 C+BuilderC+Builder开发环境开发环境 启动BCB,进入IDE,如图1-7所示,我们将该环境分解为四个窗口和六个组成部分。这四个窗口是:程序主窗口、对象监视器、应用程序窗体设计区和代码编辑器。其中,前两个窗口分别位于IDE的上方和左方,后两个窗口都位

48、于IDE的右下方,其中应用程序窗体设计区叠在代码编辑器之上。主窗口的标题是“C+Builder 6”,它可被进一步分解为主菜单、工具栏、组件面板三个部分。这三个部分加上另外三个窗口就是BCB IDE的六个主要组成部分。第第1 1章章 C+BuilderC+Builder开发环境开发环境 图1-7 BCB IDE的各个组成部分 第第1 1章章 C+BuilderC+Builder开发环境开发环境 1.3.1 程序主窗口 1主菜单 在BCB IDE主窗口顶部是主菜单,它由File、Edit、Search、View、Project、Run、Component、Database、Tools、Windo

49、ws、Help等项及相应的下拉菜单组成。IDE的大部分功能都可由该菜单系统提供。 1) File下拉菜单 File下拉菜单由New、Open、Open Project、Reopen、Save、Save As、Save All、Close、Close All、Include Unit hdr、Print、Exit等选项组成。第第1 1章章 C+BuilderC+Builder开发环境开发环境 选择New时会弹出下拉菜单,从中可选择所需创建的对象或文件类型,其中,New Application 用于创建一个新的项目,即一个空白的应用程序框架,New Form则用于将一个空白窗体添加到当前打开的项目

50、中。 Open、Open Project、Reopen用于打开项目或文件。选用Open和Open Project时都会出现打开文件对话框,用户可在对话框内选择存放文件的路径以及文件类型,按“打开”按钮即完成。一般常用Open Project打开项目,此时,与该项目有关的主要文件都已被打开。Reopen 提供最近打开过的文件列表供选择打开。第第1 1章章 C+BuilderC+Builder开发环境开发环境 As为另存,指将当前文件以另一路径或不同的文件名保存;Save All 则保存当前项目下的所有文件。建议初学者多使用Save All。 Close、Close All用于关闭文件,前者只关闭

51、当前正在操作的文件,后者关闭当前项目下的所有文件。 用Include Unit hdr可使当前编辑的源文件中包含另一个源文件,一般被包含的是C+的头文件(扩展名.h)。此项操作等同于在源程序中加入#include 语句。 用Exit 可退出BCB IDE,返回到Windows。若文件尚未关闭时选Exit,则IDE会给出提示信息。第第1 1章章 C+BuilderC+Builder开发环境开发环境 2) Edit 下拉菜单 Edit下拉菜单由 Undo、Redo、Cut、Copy、Paste、Undelete、Delete、Selete All、Align、Bring to Front、Send

52、 to Back、Tab Order 等选项组成。 Undo和Redo用于在代码编辑器窗口中进行文本编辑时取消和恢复前一次的操作,它们一般不能用于对窗体中控件的编辑。第第1 1章章 C+BuilderC+Builder开发环境开发环境 Align、Bring to Front、Send to Back、Tab Order 用于控件的编辑。其中,Align用于排列(对齐)控件,在进行排列之前应先选中一组需要排列的控件(按住Shift键不放,并用鼠标逐个点击控件就能选中一组控件);Bring to Front 和 Send to Back 用于处理窗体中若干控件相互重叠的情况,Bring to F

53、ront将选中的控件置前,Send to Back将选中的控件置后;Tab Order用于调整窗体中一组控件在程序运行时发生焦点(光标)转移的先后顺序。第第1 1章章 C+BuilderC+Builder开发环境开发环境 Cut、Copy、Paste、Delete、Undelete 在文本编辑和控件操作两种情况下都能起作用,分别表示对文本或控件进行剪切、复制、粘贴、删除和取消删除操作。其中,Cut和Delete操作前必须先选中文本或控件,进行Paste操作时必须确保剪贴板上有相应的内容存在。 第第1 1章章 C+BuilderC+Builder开发环境开发环境 3) Search下拉菜单 Se

54、arch下拉菜单由 Find、Search Again、Replace、Go To Line Number 等选项组成。 Find和Search Again用于在文本中搜索特定字符串,前者用于首次搜索,后者用于对同一字符串的再次搜索。Replace 则在搜索基础上进行替换。选择Find或Replace都会出现对话框,使用时应注意对话框各选项的正确使用方法。这些选项中,Case sensitive表示搜索时对字母区分大小写,Forward和Backward分别表示搜索方向为向前和向后,Global和Selected text分别表示在全文范围内和当前选中文本范围内搜索。第第1 1章章 C+Bui

55、lderC+Builder开发环境开发环境 Go To Line Number可搜索到文本的某一行。使用时弹出对话框,输入一个行号后即可执行。第第1 1章章 C+BuilderC+Builder开发环境开发环境 4) View下拉菜单 View下拉菜单由 Object Inspector、Alignment Palette、Window List、Debug Windows、Toggle Form/Unit、Toolbars 等选项组成,主要功能为控制IDE的外观和在各个窗口间的切换。 Object Inspector 激活对象监视窗口;Debug Windows打开Debug(纠错)窗口;W

56、indow List提供包含了当前环境中已打开的全部窗口的一个列表,选中其中一个窗口的名称,按一下“OK”按钮就能使该窗口激活并显示。第第1 1章章 C+BuilderC+Builder开发环境开发环境 Alignment Palette与Edit菜单下的Align项功能相似,但不能通过对话框进行操作,而是提供一个图形化的工具面板用于排列控件。 Toolbars可设置工具条,使某些工具按钮显示或关闭。Toggle Form/Unit 可将当前正在操作的某个窗体快速切换到代码编辑器中与该窗体相关的单元文件,或反过来从当前单元文件切换到窗体。 第第1 1章章 C+BuilderC+Builder开

57、发环境开发环境 5) Project下拉菜单 Project下拉菜单由Add to Project、Remove from Project、View Source、Compile Unit、Build Project1、Options 等选项组成。 Add to Project可将现存的某个单元文件或其它对象添加到当前项目;Remove from Project则从当前项目中删除某一文件或窗体等对象,操作时都有对话框出现。使用该两项功能时,BCB会对项目及相关代码进行必要的分析和修改。第第1 1章章 C+BuilderC+Builder开发环境开发环境 Options 设置与项目有关的选项。可

58、选择的选项很多,但大部分都非常专业,初学者一般不应随意改变这些选项的值。 Compile Unit编译当前代码文件,Build Project1则编译整个项目。 View Source 可打开项目的主程序单元的代码进行编辑,一般情况下不必编辑修改该代码。第第1 1章章 C+BuilderC+Builder开发环境开发环境 6) Run下拉菜单 Run下拉菜单由 Run、Parameters、Step Over、Trace Into、Run to Cursor、Program Reset、Program Pause、Add Watch、Add Breakpoint 等选项组成。这些菜单项主要用于

59、应用程序运行及调试。 Run菜单项编译、链接并且运行应用程序。若选择Parameters,可指定程序运行时的命令行参数。 Step Over和Trace Into都是逐句执行程序,但前者对函数调用语句视作整体一次执行,而后者则会跟踪到函数内部逐句执行。在提高篇的第8章,我们将较详细介绍这些菜单命令是如何用于程序调试的。第第1 1章章 C+BuilderC+Builder开发环境开发环境 7) Component下拉菜单 Component下拉菜单由 New Component、Install Component、Import ActiveX Control、Configure Palette

60、等选项组成,用于创建、安装自定义控件及配置控件面板。第第1 1章章 C+BuilderC+Builder开发环境开发环境 8) Database下拉菜单 Database下拉菜单由 Explore、SQL Monitor、Form Wizard 等选项组成,主要用于对数据库编程的支持。 选择Explore,则弹出“SQL Explore”窗口,该窗口用于数据库系统的SQL设计。 选择SQL Monitor,则弹出“SQL Monitor”窗口,该窗口用作SQL操作的监视器。 选择 Form Wizard,则出现一个数据库窗体设计向导,按照屏幕提示,可以很方便地设计一个对简单数据库作常规操作的窗

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论