C++builder教程大全

C++builder教程大全
C++builder教程大全

Borland C++ Builder 5.0是Inter pries(Borland)公司推出的基于C++ 语言的快速应用程序开发(Rapid Application Development,RAD)工具,它是最先进的开发应用程序的组件思想和面向对象的高效语言C++融合的产物。C++Builder 充分利用了已经发展成熟的Delphi 的可视化组件库(Visual Component Library,VCL),吸收了Borland C++ 5.0 这个优秀编译器的诸多优点。C++Builder 结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优秀编译器,调试器。发展到5.0版本,C++Builder 已经成为一个非常成熟的可视化应用程序开发工具,功能强大而且效率高。

C++Builder的特色:

1.C++Builder 是高性能的C++开发工具

C++Builder是基于C++的,它具有高速的编译,连接和执行速度。同时,C++Builder具有双编译器引擎,不仅可以编译C/C++程序,还能编译Object Pascal语言程序。

2.C++Builder是优秀的可视化应用程序开发工具

C++Builder是一完善的可视化应用程序开发工具,使程序员从繁重的代码编写中解放出来,使他们能将注意力重点放在程序的设计上,而不是简单的重复的劳动中。同时,它提供的完全可视的程序界面开发工具,从而使程序员对开发工具的学习周期大大缩短。

3.C++Builder具有强大的数据库应用程序开发功能

C++Builder 提供了强大的数据库处理功能,它使的程序员不用写一行代码就能开发出功能强大的数据库应用程序,这些主要依赖于C++Builder众多的数据库感知控件和底层的BDE数据库引擎。C++Builder除了支持Microsoft的ADO(Active Data Object)数据库连接技术,还提供了一种自己开发的成熟的数据库连接技术——BDE(Borland Database Engine)数据库引擎。

4.C++Builder具有强大的网络编程能力

C++Builder具有众多的Internet应用程序开发控件,如Web Broker,Cpp Web Browser,Win Socks 等,它们基本含盖了Internet应用的全部功能,利用它们程序员可以方便地建立自己地Internet 应用程序。

一.C++Builder5.0的集成开发环境(IDE,Integrated Development Environment)

1.C++Builder 5.0的IDE主界面

1)组件面板

标准组件选项卡上的组件是构成Windows应用程序窗口最常用的标准元素,它们包括15种组件。主要有:主菜单(Main Menu),右键菜单(Pop Menu),标签(Label),备注(Memo),命令按钮(Button),单选按钮(Group Box),复选按钮(Check Box),列表框(List Box),下拉式列表框(Combo Box),滚动条(Scroll Bar),组框(Group Box)和单项按钮组框(Radio Group)。

附加组件选项卡上的组件是Windows应用程序常用的专门控制元素,它包括14种组件。主要有:位图按钮(BitBtn),加速按钮(Speed Button),格式编辑框(Mask Edit),字符网格(String Grid),数据网格(data Grid),图片框(Image),形状(Shape),和控制栏(Control Bar)。

Win32组件选项卡上的组件是32位Windows应用程序的常用元素,它们具有32位应用程序

的新特征,Win32组件选项卡共包括18种组件。分页面控制(Page Control),图片列表(Image List),多文本编辑器(Rich Edit),列表视图框(List View),树状目录视图框(Tree View),工具栏(Tool Bar)和状态栏(Status Bar)。

Data Access和Data Control组件选项卡上的组件是用来设计数据库应用程序的。其中Data Access组件选项卡上的组件是数据库应用程序用来与数据库建立连接的,它们也称为数据访问组件。而Data Control 组件选项卡上的组件是用来与用户交互的,它们也称为数据感知组件。

主要是:表(Table),查询(Query),数据源(Data Source),数据库导航器(DB Navigator),数据表格(DB Grid),数据库编辑框(DB Edit),数据库静态文本框(DB Text),数据库列表框(DB List Box),数据库图片(DB Image)。

Dialogs组件选项卡是由一些常用标准对话框组件组成的。主要完成打开文件,保存文件,查找,替换,打印,打印机设置等Windows标准的对话框功能。

2)对象查看器

对象名称用于选择和查看当前对象的名称,属性选项卡用于设置对象设计时的可见属性,事件选项卡用来设置对象的事件句柄或者在代码编辑器中定位对象事件句柄

二.创建Windows程序

在主菜单中选择【File】中的【New】,在New 对话框中选择Application,按OK。

三.运行程序

在菜单中选择【Run】中的【Run】,或者直接按快捷菜单上的运行按钮,还有是按快捷键F9,就可以运行当前程序。

四.编译程序

在菜单中选择【Project】中的【build project1】就可以把程序编译成为可以直接运行的.exe 文件。但是这样编译而来的执行文件因为是动态连接到库函数,所以在没有装C++ Builder的机上不能正常运行。要编译成静态连接库,可以在所有机上运行的程序,只要这样做:打开【project】的【Options】,把packages页中的…build with runtime packages?的勾去掉,linker页中的…use dynamic Rtl?的勾去掉,再在compiler页中按release键。然后重新在【Project】中的【build project1】就可以把程序编译成为可以直接运行的.exe文件。

五.保存程序

在主菜单中选择【File】中的【Save Project As】选项。

再把所以文件(包括.cpp, .bak)都保存到一个目录下面。

加载C++ Builder 组件和引入ActiveX控件

一.加载C++ Builder组件

C++ Builder中有很多组件,其中有一大部分组件不是很常用的,所以在C++ Builder中默认只加载了一部分常用的组件,其他组件就要进行手工加载。或者从别的地方(如在网上下载)得到一些其他的组件包(*.bpl),要把它加载到C++ Builder里面,就要用到加载组件。

在C++ Builder中加载组件是很方便的,你可以在主菜单【Project】中按【Options】,再选【packages】页,又或者在【Component】中选【Install Packages】,得到packages 对话框(如下图)。

如果你想要加载C++ Builder中未加载的组件,只有在相应的组件包的前面打勾来选定;如果你要加载其他组件包,按【Add】按钮,再在【Add Design Package】对话框中选定其组件包(*.bpl)。之后按【OK】键,新加载的组件就会出现在组件面板上。

二.引入ActiveX控件

众所周知,ActiveX控件因为其可以跨平台的特性使得ActiveX在很多环境下被广泛地使用。在C++ Builder中引用ActiveX很简单。具体操作是在主菜单【Component】中选【Import ActiveX Control…】,弹出【Import ActiveX】的对话框,在对话框中选择你要引用的ActiveX控件。

1. 控件类明,可以包括多个,表示这个ActiveX控件包里面有多个ActiveX控件,如这里就包T Skin Form,T skin Button和T Skin Panel这三个控件。

2. 组件在Component Palette(组件面板)的页面。在本例中,我们把引入的ActiveX控件放在ActiveX页面中。

3. 组件的源文件(.cpp)。

4. 当前搜索路径,一般不用修改。

按【Install】键,ActiveX控件已经成功地引入到C++ Builder中,反正组件面板的ActiveX 页面中。

编程入门第一课――Hello World

曾几何时,Hello World已经成为编程入门的第一课。不管是什么语言,都以一个打出Hello World字串的小程序作为第一个入门程序。我们现在学C++ Builder也把这个程序作为学习C++ Builder的第一个入门程序。

相对C/C++等非可视化语言来说,C++ Builder作为一种强大的可视化编程语言,那么它的入门级的Hello World程序也会非同凡响,而且还很简单易懂。好,现在就开始我们的Hello World!

一.首先要创建一个新的程序。

在【File】菜单下选【New】,再在【New Items】对话框中选择Application,按OK键。或者在【File】菜单下直接选择【New Application】。

二.加入相关组件。

把要用到的组件从在组件面板(Palette)上拖到窗体(Form)上,摆好位置,并设置好大小。我们这里用到一个标签(Label)和两个命令按钮(Button)。再改变窗体的大小,使窗体看上去好看一点。

三.设置组件的属性

在属性查看器中修改各个组件的属性。下面的图示是把Label1的Caption(标题)属性改为…Hello World?。先点击窗体上的Label1组件,再在右边的属性查看器中选定Caption的项,输入?Hello World?。

编程入门第一课――Hello World

如上述所示,分别设置三个组件的属性为:

四.加入事件。

双击Button1,弹出代码编辑窗口,在Button1Click事件中加入以下代码:Label1->Caption="Hello C++ Builder!" ;

双击Button2,在Button1Click事件中加入以下代码:

Form1->Close();

五.编译运行Hello World程序。

按快速栏上的运行按钮,或者按快捷键(F9)运行Hello World程序。

按【Start】按钮,结果如下:

按【Exit】退出程序。

到此为止,一个完整的HelloWorld程序就完成啦,是不是简单得不可思议呢?下面再说两个小技巧:

1.更换标题栏上得图标。

更改窗体(Form1)的Ico属性,把它改为你想要的图标文件(*.Ico).

2.更改执行文件的图标

在【Project】菜单下选【Options】,弹出【Project Option】对话框,选择【Application】页,按【Load Icon…】键浏览选择自己想要的图标文件。按【OK】。

按【Project】菜单下的【Build Project】编译Hello World程序,得到可执行文件(.exe)。

设计菜单之一――下拉式菜单

用过Windows程序(最典型的就是Word和资源管理器或一般Windows软件)的人也许有个印象,就是Windows下的程序的菜单很丰富好用,而且还很灵活多变。

事实上Windows下的程序的菜单大致可以分成两大类:

第一类是下拉式的菜单,如主菜单(Main Menu)和右键菜单(Pop Menu);

第二类是功能按钮菜单,如工具菜单(Tool Menu)。

绝大多数的Windows程序都是采用下拉式的菜单,也有少部分的程序是使用功能按钮菜单。这两种菜单设计方式各有优缺点,前者的好处是设计方式简单、不占画面空间,可是缺点是必须一层一层地进入之功能选项,无法一次看到所有的功能选项;而后者的优点是可以加入漂亮

的图标、一次可以看到许多的选项,缺点是占用程序画面的空间。

我们这里将分别介绍这两种菜单。

一.下拉式菜单

下拉式菜单由菜单项和菜单命令构成,菜单项起到将功能分类存放的作用,如【文件】菜单项就是将针对文件操作的所有功能收容其下。而这些功能就体现为若干项菜单命令,菜单命令必须选定其所属菜单项后才出现在下拉菜单中。下拉式菜单包括主菜单(Main Menu)和右键菜单(Pop Menu)。

1.主菜单(Main Menu)

(1)创建主菜单。

步骤1:先启动一个新的工程【File】->【New Application】。

步骤2:从组件面板的【Standard】页,拖拉Main Menu组件到Form1上。

步骤3:双击Form1上的Main Menu,出现一个菜单编辑器。

步骤4:接着点选第一项主菜单的位置,并且在属性Caption输入字符串…文件?,然后点选第一项主菜单下面的第一层子菜单,继续输入直到第一项主菜单的功能建立完毕,接着输入第二项主菜单,如此类推。

注意:(1)如果你想输入分割符,请把改2项的属性Caption设置为…-?即可。

(2)如果你想加入快捷键,请在选项字符串中挑出某个字符,当作代表此项功能的热键(Hot Key),在那个字符的前面加上…&?z字符即可。当程序运行时,你可以同时按下【Alt】键和热键字符来执行对应的功能选项。另外一种热键功能是直接设定每一个选项的属性ShotCut。

步骤5:如果在第一层子菜单的选项想继续往下建立第二层菜单,请将鼠标移到第一层子菜单的第一项功能…打开文件?,然后按下鼠标右键,你将会发现右键菜单的第三项功能…Create Submenu?,点选它之后,…打开文件?选项下面就会多一层子菜单,你再输入这份子菜单内的选项内容,若是想继续往下建立子菜单,如此类推。

步骤6:整个菜单建立完成以后,每一项菜单功能的程序是写在On Click事件内,而每一项菜单功能都会产生对应的On Click事件。你可以将鼠标移到菜单编辑器上的菜单项上双击,会弹出程序编辑器,然后你可以在当前位置(事件程序)中输入你的程序代码。

(2)应用菜单模板和把菜单保存为菜单模板

A.应用菜单模板:可以把C++Builder自带的菜单或者是自己保存的菜单直接引用。具体操作是:在菜单编辑器的快捷菜单点击【Insert Form Template】,再在【Insert Template】对话框中选择一个菜单,按【OK】键。

B.把菜单保存为菜单模板:把常用菜单保存为菜单模板,那么下次编辑菜单的时候就可以直接加载,方便省时。具体操作是:在菜单编辑器的快捷菜单点击【Save To Template】,弹出【Save Template】的对话框,输入菜单的描述(名字),按【OK】键。

到此为止,一个像模像样的主菜单就完成拉,是不是很不错呢?

2.右键菜单(PopMenu)

右键菜单(PopMenu)又叫弹出菜单,你可以先设计好一个PopMenu组件,然后指定给任何一个可视化组件,当用户将鼠标移到这些可视化组件上,按下右键,就会弹出一个菜单,这个菜单就是PopMenu组件,下面是建立PopMenu菜单的步骤:

步骤1:先从组件面板的【Standard】页拖拉PopMenu组件到Form1上。

步骤2:建立菜单的内容和实现功能的事件程序和主菜单一样,请参考上一节。

请看下图:

C++ builder 中关于窗体的一些操作

C++ builder 中关于窗体的一些操作(总在最前,遍历控件...) 一、让窗口总是在最前面 Form 的FormStyle属性设置为fsStayOnTop值。 二、动态调用窗体Form 在缺省情况下,由File/New Form生成添加入项目文件中的窗体都具有"Auto Create"(自动创建)的特性。即只要程序运行,该窗体就存在于内存中了,不管当前它是否被调用。具有这种特性的窗体一般适用于窗体属性比较固定、经常被调用的情况。其优点是速度快,缺点是占用内存。在实际程序设计中,会遇见大量类似对话框功能的窗体,它们用于显示状态或输入信息,仅须在程序中调用一下,完成其功能就行了,无需常驻内存。这时可以通过选择Project/Options/Forms,将"Auto--Create forms " 栏中相应的窗体, 如Form1,用" >" 键移动到"Available forms"栏中,并在程序需调用该窗体处,加入下列语句:TForm1 *myform=new TForm1(this); myform- >ShowModal(); delete myform; 窗体Form1仅是在需要调用时才调入内存,调用完成后,即用delete清除出内存。这样可减少程序对内存资源的占用。 三、遍历窗体控件的方法 要访问或修改窗体上的控件,方法很简单,以TEdit为例子: Edit1- >Text=""; Edit2- >Text=""; 但如果窗体上有十来个像Edit1 这样的控件,需要进行相同的初始化,用上面的方法一个一个地进行,岂不麻烦!所以有必要掌握遍历窗体控件的方法。在介绍该方法之前,让我们先了解一下窗体Form 的Components 和Controls 属性。参见表一。

C builder教程大全

BorlandC++Builder5.0是Interpries(Borland)公司推出的基于C++语言的快速应用程序开发(RapidApplicationDevelopment,RAD)工具,它是最先进的开发应用程序的组件思想和面向对象的高效语言C++融合的产物。C++Builder充分利用了已经发展成熟的Delphi的可视化组件库(VisualComponentLibrary,VCL),吸收了BorlandC++5.0这个优秀编译器的诸多优点。C++Builder结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优秀编译器,调试器。发展到5.0版本,C++Builder已经成为一个非常成熟的可视化应用程序开发工具,功能强大而且效率高。 C++Builder的特色: 1.C++Builder是高性能的C++开发工具 C++Builder是基于C++的,它具有高速的编译,连接和执行速度。同时,C++Builder具有双编译器引擎,不仅可以编译C/C++程序,还能编译ObjectPascal语言程序。 2.C++Builder是优秀的可视化应用程序开发工具 C++Builder是一完善的可视化应用程序开发工具,使程序员从繁重的代码编写中解放出来,使他们能将注意力重点放在程序的设计上,而不是简单的重复的劳动中。同时,它提供的完全可视的程序界面开发工具,从而使程序员对开发工具的学习周期大大缩短。 3.C++Builder具有强大的数据库应用程序开发功能 C++Builder提供了强大的数据库处理功能,它使的程序员不用写一行代码就能开发出功能强大的数据库应用程序,这些主要依赖于C++Builder众多的数据库感知控件和底层的BDE数据库引擎。C++Builder除了支持Microsoft的ADO(ActiveDataObject)数据库连接技术,还提供了一种自己开发的成熟的数据库连接技术——BDE(BorlandDatabaseEngine)数据库引擎。

cbuilder常用函数汇总

c b u i l d e r常用函数汇总 The Standardization Office was revised on the afternoon o f December 13, 2020

c++ builder 常用函数汇总 对话框类函数 打开对话框: if(OpenDialog1->Execute()) { Memo1->Lines->LoadFromFile(OpenDialog1->FileName); } 保存对话框: if(SaveDialog1->Execute()) { Memo1->Lines->SaveToFile(SaveDialog1->FileName); } 其它常用函数 ShowMessage(s);_str(); ShowMessage(s); } //--------------------------------------------------------------------------- SubString(index,count)//字符串裁减函数 Index为字符串的序号,从1开始,count为要裁减的长度,如:String s=Edit1->Text; ShowMessage(1,2)); IntToHex(n1,n2)//十进制转16进制,n1为要转换的数, n2为转换的16进制的位数,如: int i=255; ShowMessage(IntToHex(i,2)); StrToInt(s)//字符串转数字,如: String s="1234";

int i=4321 + StrToInt(s); ShowMessage(i); IntToStr(n)//数字转字符串,如: int i=4321; String s="1234" + IntToStr(i); ShowMessage(s);

ODBC_API常用函数介绍

ODBC API 常用函数诠释
作者: moonbreak, 出处:blog, 责任编辑: 唐小若,
2008-09-03 10:03
ODBC API 是一套复杂的函数集,可提供一些通用的接口,以便访问各种后台数据库。本 文详细介绍了 ODBC API 的常用十四个函数并列出在 PowerBuilder 中外部函数引用声明。 以下为 ODBC API 的常用十四个函数,先列出在 PowerBuilder 中外部函数引用声明:
nv(ref long phenv) library "odbc32.dll"
v(long henv) library "odbc32.dll"
ources(long henv,int fdirection,ref string szdsn,&
er pcbdsn,ref string szdescription,integer cbdescriptionmax,ref integer pcbdescription)library "odbc32.dll"
onnect(long henv,ref long hdbc)library "odbc32.dll"
ct (long hstmt,ref string szdsn,integer dsnlen,ref string
ng szpwd,integer pwdlen) library "odbc32.dll"
nect (long hdbc) library "odbc32.dll"
mt(long hdbc,ref long hstmt)library "odbc32.dll"
long hstmt,ref string sztablequalifier,integer tablequalifierlen,ref string szowner,integer owerlen,ref string szname,integ
pelen)library "odbc32.dll"
ns(long hstmt,ref string sztablequalifier,integer tablequalifierlen,ref string szowner,integer owerlen,ref string szname,in
pelen)library "odbc32.dll"
ol(long hstmt,integer colnum,integer datatype,ref string name,long maxlen,ref long actlen) library "odbc32.dll"
ong hstmt)library "odbc32.dll"
lenv,long hdbc,long hstmt,ref string sqlstate,ref long nativeerror,ref string errormsg,integer errormsgmax,ref integer e
mt(long hstmt,integer Options)library "odbc32.dll" 1、function integer SQLAllocEnv(ref long phenv) library "odbc32.dll" 、 参数: long phenv 引用传递的 long 类型参数, ref 保存该函数返回的 OBDC 环境的句柄。 存放在 phenv 中的值成为以后 OBDC API 函数调用的唯一标识符。 返回值:integer 成功时,返回 0,失败返回值小于 0。 函数功能:获取 ODBC 环境句柄。 2、function integer SQLAllocStmt(long hdbc,ref long hstmt)library 、 "odbc32.dll"

BCB编程过程中的各种问题集锦

C++需要掌握:类、构造函数、析构函数、函数重载、运算法重载;私有成员、公有成员、保护成员的作用域。 一:安装 1、找到INSTALL文件夹里,双击Setup,注册码可从注册机中获得。安装时选择custome 方式,最好装在c盘(即使装在D盘,重做系统后也必须重装)。 2、注意一些选项勾选去掉就可以,不装VisiBroker和interbase,可以不备份uninstall信息。 3、安装完成后,重新启动计算机,打开BCB,会提示注册,再打开注册机,将所给的三个 代码全部输入到注册机中,注册机会自动给出第四个代码,将其粘贴到空白选项内,即可完成注册。 4、Win7系统注意:帮助文档安装不上的需要另外安装一个更新包,将帮助文档连接上即 可,此更新包叶连杰有。此外还会出现管理权限问题,可通过各盘右键单击,属性->安全->编辑中将所有用户的完全控制打钩即可。 二:开始运行 1、创建工程File->New->Application 2、修改Tabsize,菜单tools->Editor Option->Tab Stops=4 3、保存:创建一个工程目录,下建sourse子目录,用于存放工程源文件。会先提示保存 窗体和类的名字,一般名字前加U表示Unit,窗体文件前面加UForm,再保存工程名一般名字前面加个Pro。 4、文件存放位置:通过Project->Options->Directories/Conditionals来设置,将运行程序产生 的可执行文件、OBJ文件分别放在相应文件件内。通常Debug source path内输入$(BCB)\source\ ;Intermediate output 内输入debug(相应文件存入debug内),Final output 内输入exe。若要在上层文件夹内创建以上两个文件可在相应的输入前加..\ 。为了产生的文件可以在没有C++Builder的计算机上运行还要通过Project->Options->Linker内取消Use dynamicRTL选项的勾选、Project->Options->Packages内取消Build with runtime packages选项的勾选最后单击Complier->单击Release。 三:常用组件 1.Standard选项卡中 PopupMenu, Label, Edit, Memo, Button, CheckBox, RadioButton, ListBox, ComboBox, GroupBox,(RadioGroup, Panel) 2.Aditional选项卡中 StringGrid, LabelEdit, Chart(MaskEdit, Image, CheckListBox, ColorBox) 3.Win32选项卡中 PageControl, (DateTimePicker, StatusBar) 4.System选项卡中 Timer, MediaPlayer 5.Win31选项卡中

C++Builder (BCB)编程规范

C++Builder (BCB)编程规范 之 鲨鱼美美版 本鲨于2002年出道,直今的2004年,快有两年啦! 时间流逝可真快! 毕业后共打了四份工,全部是做软件书写师。都涉及到数据库的领域!.不过薪金也逐步提高了 从50,130,150,到250英镑。每次进一家公司,不是去做开发而是做维护。所以修改代码,调试程序,找出BUG。简直是莫大的痛苦,尤其是修改那些用管C语言人开发的程序,乃是今生莫大的痛苦呀!就逐步总结了一些可行的经验。 1 单元 每个单元只包含一个类的声明。类中不永许写类的实现,类成员函数不超过20个,需要被外界调用的成员函数放在Public外,其余的全部放在Proteced,明确的不想让继承者修改的话放在Private中。 包含的头文件 也就是#include 在头文件应该包含该类所需要的类型的。如果cpp也包含了,那么头文件就不要在包含,使用Class vcl; 告诉头文件有些需要的已经在CPP文件中包含啦!另外对不再使用的包含文件要及时的清除出去,否则可能碰到连接出错的问题,bcb的连接提示少的可怜啊!就有苦头吃拉!还有要记得给自己加进的包含写注解啊!! 2 实现文件中 千万不要定义全局变量和全局函数,至于会发什么问题啦,只有碰到了几十万的代码,五六个项目集合,一两百个单元所可能发生的问题。那该怎么办了? 简单把它归到所在单元的类声明中去。函数的实现代码行不要超过200行 包括之间的空格.因为人的暂时记忆能力不强啊! 为什么文章要分段落啊! 就是人暂存上下文的关联的内存是有限的呀 3 组件的属性设置和数据库的字段表名: 一般下都会在对象检查器中的设置。当调试过不去而你又忘记了设置

C Builder_6图形、图像及实例

ok . et 内容提要:本文介绍了图形的绘制和图像处理,其中详细介绍了画布(Canvas)的属性与使用 方法,利用它们,可以非常直观方便地绘制直线、曲线、矩形、椭圆等各种图形。本文还介绍了图 像处理的方法,其中包括 Image 组件、TBitmap 类和 TJPEGImage 类的使用,而要进行快速的图像 处理,几乎都离不开 ScanLine 技术。使用 ScanLine 技术,能够快速取得bitmap 的每行的颜色值, 而无需使用 Canvas 的 Pixels 属性逐点获取像素点的颜色值。 关键字:C++Builder、图形、图像、画布 引言:自 Windows 诞生以来,可以通过 GDI(Graphics Device Interface)来实现图形的绘制。 然而对于初学者来说,庞大复杂的 GDI 绘图系统是一个难以跨越的学习障碍。所幸的是,在 C++Builder 绘图系统中,提供了一个简易可行的画布( Canvas),可以用非常直观的方式来实现

Windows 下的绘图功能。C++Builder 提供了 Image 组件,可以很方便地装载图像,以及进行图像处 理。 正文: 1 在窗体上作图 1.1 知识要点 1. 画布( Canvas) 在 C++Builder 中,几乎所有的可视化组件(包括:Form、Image、Bitmap、PaintBox)都包含 Canvas 属性。Canvas 包含了许多和绘图有关的性质,如 Pen、Brush、Pixels、Font 等,另外它还包 含了各种绘图的函数,如 LineTo、Rectangle、MoveTo、Polygon 等。 (1)Canvas 类主要属性有: Font:画布绘制文本所用的字体。 Brush:用于填充背景的画笔刷。 Pen:用来画线和描述图形轮廓的画笔。 PenPos:当前绘图位置的坐标。 Pixels:画布像素数组。

常用函数和方法

1、DateTime 数字型 1.1 取当前年月日时分秒 1.2 取当前年 1.3 取当前月 1.4 取当前日 1.5 取当前时 1.6 取当前分 1.7 取当前秒 1.8 取当前毫秒 1.9 取中文日期显示——年月日时分 1.10 取中文日期显示_年月

1.11 取中文日期显示_月日 1.12 取当前年月日,格式为:2003-9-23 1.13 取当前时分,格式为:14:24 2、字符型转换转为32位数字型 Int32.Parse(变量) Int32.Parse("常量") 3、变量.ToString() 字符型转换转为字符串 12345.ToString("n"); //生成12,345.00 12345.ToString("C"); //生成¥12,345.00 12345.ToString("e"); //生成 1.234500e+004 12345.ToString("f4"); //生成12345.0000 12345.ToString("x"); //生成3039 (16进制) 12345.ToString("p"); //生成1,234,500.00% 4、变量.Length 数字型 取字串长度: 如:string str="中国"; 5、字码转换转为比特码 System.Text.Encoding.Default.GetBytes(变量) 如:byte[] bytStr = System.Text.Encoding.Default.GetBytes(str); 然后可得到比特长度:

len = bytStr.Length; 6、System.Text.StringBuilder("") 字符串相加,(+号是不是也一样?) 如: 7、变量.Substring(参数1,参数2); 截取字串的一部分,参数1为左起始位数,参数2为截取几位。如:string s1 = str.Substring(0,2); 8、取远程用户IP地址 9、穿过代理服务器取远程用户真实IP地址: 10、存取Session值 如,赋值: 取值:

teechart常用函数

teechart常用函数 1.addxy function AddXY(Const AXValue, AYValue: Double; Const ALabel: String; AColor: TColor): Integer; virtual; Unit TeEngine Description This function inserts a new point in the Series. The new point has X and Y values. The ALabel parameter is optional (can be empty ''). The AColor parameter is optional (can be clTeeColor). The function returns the new point position in the Values list. Series1.AddXY( 123, 456, 'Hello', clGreen ); 2.addx,addy function AddY(Const AYValue: Double; Const ALabel: String; AColor: TColor): Integer; Unit TeEngine Description The TChartSeries AddY method can be used to insert new Series points when you do not have an X Value for the point. This function inserts a new point in the Series. The new point only has Y values. X value is automatically calculated. The AXLabel parameter is optional (can be empty ''). The AColor parameter is optional (can be clTeeColor). The function returns the new point position in the Values list. 3.TeeSaveToBitmap procedure TeeSaveToBitmap(APanel: TCustomTeePanel; Const FileName: WideString; Const R: TRect); Unit TeeBmpOptions Description Creates a bitmap from a Chart or Tree component and saves it to a file. TeeSaveToBitmap( Chart1, 'c:\mychart.bmp', Chart1.ChartBounds ); 3.1 procedure TeeSaveToJPEG(APanel: TCustomTeePanel; Const FileName: WideString; AWidth, AHeight: Integer); Unit TeeJPEG Description Creates a JPEG picture from a Chart or Tree and saves it to a file. TeeSaveToJPEG( Chart1, 'mychart.jpg', 400, 250 );

PB函数大全

一、数组函数 1、LowerBound() 功能:得到指定数组第n维的下界。 语法:LowerBound ( array {, n } ) 参数:array:数组名。 n:数值类型,可选项,指定要得到数组哪一维的下界。缺省值为1。 返回值:Long。函数执行成功时返回array数组第n维的下界。如果n的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值为NULL,LowerBound()函数返回NULL。示例:integer a[5], b[2,5] LowerBound(a) // Returns 1 LowerBound(a, 1) // Returns 1 LowerBound(a, 2) // Returns -1, a has only 1 dim LowerBound(b, 2) // Returns 1 integer c[ ] LowerBound(c) // Returns 1 c[50] = 900 LowerBound(c) // Returns 1 integer d[-10 to 50] LowerBound(d) // Returns - 10 2、UpperBound() 功能:得到指定数组第n维的上界。 语法:UpperBound( array {, n } ) 参数:array:数组名。 n:数值类型,可选项,指定要得到数组哪一维的上界。缺省值为1。 返回值:Long。函数执行成功时返回array数组第n维的上界。如果n的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值为NULL,UpperBound()函数返回NULL。示例:integer a[5], b[2,5] LowerBound(a) // Returns 1 LowerBound(a, 1) // Returns 1 LowerBound(a, 2) // Returns -1, a has only 1 dim LowerBound(b, 2) // Returns 1 integer c[ ] LowerBound(c) // Returns 1 c[50] = 900 LowerBound(c) // Returns 1 integer d[-10 to 50] LowerBound(d) // Returns - 10

C++_Builder6.0简易实例教程

Borland C++Builder 6.0教程 Borland C++Bilder 6.0是Interprise(Borland)公司推出的基于C++ 语言的快速应用程序开发(Rapid Application Development,RAD)工具,它是最先进的开发应用程序的组件思想和面向对象的高效语言C++融合的产物。C++Builder 充分利用了已经发展成熟的Delphi 的可视化组件库(Visual Component Library,VCL),吸收了Borland C++ 6.0 这个优秀编译器的诸多优点。 C++Builder 结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优秀编译器,调试器。发展到6.0版本,C++Builder 已经成为一个非常成熟的可视化应用程序开发工具,功能强大而且效率高。 C++Builder的特色: 1.C++Builder 是高性能的C++开发工具 C++Builder是基于C++的,它具有高速的编译,连接和执行速度。同时, C++Builder具有双编译器引擎,不仅可以编译C/C++程序,还能编译Object Pascal语言程序。 2.C++Builder是优秀的可视化应用程序开发工具 C++Builder是一完善的可视化应用程序开发工具,使程序员从繁重的代码编写中解放出来,使他们能将注意力重点放在程序的设计上,而不是简单的重复的劳动中。同时,它提供的完全可视的程序界面开发工具,从而使程序员对开发工具的学习周期大大缩短。 3.C++Builder具有强大的数据库应用程序开发功能 C++Builder 提供了强大的数据库处理功能,它使的程序员不用写一行代码就能开发出功能强大的数据库应用程序,这些主要依赖于C++Builder众多的数据库感知控件和底层的BDE数据库引擎。C++Builder除了支持MicroSoft的ADO (Active Data Object)数据库连接技术,还提供了一种自己开发的成熟的数据库连接技术——BDE(Borland Database Engine)数据库引擎。 4.C++Builder具有强大的网络编程能力 C++Builder具有众多的Internet应用程序开发控件,如WebBroker,CppWebBroswer,WinSocks等,它们基本含盖了Internet应用的全部功能,利用它们程序员可以方便地建立自己地Internet应用程序。 一.C++Builder6.0的集成开发环境(IDE,Integrated Development Environment) 1. C++Builder 6.0的IDE主界面

powerbuilder 常用基础知识

PowerBuilder为数据窗口控件提供了丰富的函数,这些函数使用户能够在使用数据窗口控件时得心应手。 与数据库有关的函数 这类函数完成与数据库有关的功能。 一、连接数据库 连接数据库也就是指定事务对象。PowerBuilder提供了两个函数:SetTrans()和SetTransObject()。 语法格式: dw_control.SetTrans(TransactionObject) dw_control.SetTransObject(TransactionObject) 其中,dw_control是所使用的数据窗口控件,transactionObject是所要指定的事务对象。 这两个函数有一个重要的区别就是在使用SetTrans()函数时,用户不需做任何数据初始化或事务对象初始化工作。用户只需要在这里填充一个事务对象,PB就会自动完成对该事物对象的初始化以及和数据库连接的工作。而使用SetTransObject()函数时,用户必须首先把所用的事务对象连接到数据库上。 但是,这并不意味着SetTrans()函数比SetTransObject()函数更好,使用SetTrans()函数时,每调用一次函数必须连接一次数据库,因为这个函数在每个事务处理的末端都会执行Disconnect语句。与此相反,使用SetTransObject()函数可以为数据库维持一个开放性的连接。因此在一般情况下,为了提高效率,总是采用SetTransObject()函数。 这两个函数都是成功时返回1,发生错误时返回-1。 二、检索数据 用于检索数据的函数只有一个,就是Retrieve()函数。 语法格式: dw_control.Retrieve() 假如数据窗口控件上的数据窗口对象是有检索参数的,就要在这个函数调用时加上检索参数。而且检索参数必须和数据窗口对象中定义顺序一致。

C++Builder 常用String方法

C++Builder 常用String 关于AnsiSting的使用大全(1) arrow: Ansistring 转char 代码: void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString Test = "哈哈"; char *chr = Test.c_str(); } char转Ansistring 代码: #include

void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString str = "Sample"; char chr[MAX_PATH]; strcpy( chr , str.c_str() ); } ansistring转int 代码: void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString Test = "123"; int i = StrToInt( Test ); } int转ansistring 代码:

void __fastcall TForm1::Button1Click(TObject *Sender) { int i = 123; AnsiString str = IntToStr( i ); } ansisting转double 代码: void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString Test = "123"; long double d = StrToFloat( Test ); } double转ansistring 代码:

用C++ Builder 写EXCEL操作

曾用C++ Builder 写过EXCEL操作。 一般有两种方法: 1,用ADO连续EXCEL数据库,这种方式,操作可用SQL来操作。 2,用OLE方式,这种方式可以达到EXCEL中大部分的功能和操作。 以下供参考: /************* 1--- ADO *************/ //.h //--------------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include #include #include #include #include #include #include #include #include //--------------------------------------------------------------------------- class TForm1 : public TForm { __published: // IDE-managed Components TButton *btnOpen; TButton *btnExit; TOpenDialog *OpenDialog1; TButton *btnEx; TDataSource *DataSource1; TADOConnection *ADOConnection1; TADOQuery *ADOQuery1; TDBGrid *DBGrid1; void __fastcall btnExClick(TObject *Sender); void __fastcall btnOpenClick(TObject *Sender); void __fastcall btnExitClick(TObject *Sender); private: // User declarations public: // User declarations __fastcall TForm1(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif //.cpp //---------------------------------------------------------------------------

BCB第九讲事件和事件处理函数

事件和事件处理函数 在上一讲中我们主要学习了如何设计用户界面,了解了向窗体中添加元件、设置元件属性和调整元件的布局的方法,到目前为止,音乐收藏小程序MP3Collect 的用户界面已经初具雏形了,但是界面上的元件还不能响应用户的输入,因此在本讲中,我们就来为元件添加事件响应函数,让程序真正活起来。 添加记录 MP3Collect 主要的用途是管理音乐文件,我们首先就来实现添加记录的功能。按照我们的设想,添加记录的功能是由用户按下“添加”按钮时启动的,那么怎样才知道用户按下了这个按钮呢?这就引出了今天要介绍的元件事件及其事件处理函数的问题。 讲座前面曾经强调过,CBuilder 开发的应用程序是事件驱动的,用户的操作、系统环境变化以及应用程序之间的相互作用都会触发一些事件,CBuilder 提供的元件可以对这些事件进行响应,每一种元件都有特定的事件集合,该集合与它所实现的功能有关。 选中“添加”命令按钮后,调出它在对象浏览器中的事件页 (图9-1),查看它的事件集合,我们可以发现一个简单的命令按 钮能够响应十多个事件,每种事件的名称都具有“OnXXXX ”的 格式,其中前缀“On ”表示这是事件的名称,而“XXXX ”则代 表了事件的性质。多数事件的名称都很好理解,如果想进一步了 解各个事件的详细含义,可以按F1键查看联机帮助,例如通过联 机帮助我们可以了解到:当用户按下命令按钮时,就会触发 OnClick 事件,因此我们需要响应OnClick 事件,从而实现添加记 录的功能。 所谓响应事件,是指为元件的某个事件指定一个且只能指定 一个处理函数,当该事件发生时,程序会自动执行该函数。 我们在对象浏览器中选中“添加”按钮对象的OnClick 事件, 并在事件名称右侧的编辑框中输入事件处理函数的名称 “BtnAddSongClick ”(可根据需要自行修改),然后按回车键, CBuilder 集成开发环境就会在TMainForm 文件中自动添加一个空的事件处理函数: void __fastcall TMainForm::BtnAddSongClick(TObject *Sender) 除了上述方法之外,还有好几种可以更方便地添加事件处理函数的方法。一种方法是双击事件名称右侧的空白输入框,便能自动添加一个事件处理函数,自动添加的函数的名称是由元件名称和事件名称组合而来的。另一种方法是直接双击放在窗体上的元件对象本身,CBuilder 就会自动为该元件添加缺省事件的处理函数,CBuilder 的每一种元件都有其缺省的事件。 下面我们来给TMainForm::BtnAddSongClick 添加程序代码,完成添加记录的功能。 每条MP3音乐记录由三个部分组成:“文件名称”、“歌曲名称”和“歌手名称”,其中“文件名称”是MP3歌曲文件所在的路径全名,它是每条记录必须有的内容,而“歌曲名称”和“歌手名称”允许为空字符串,即没有内容。上述三部分信息需要用户在三个编辑框中输入,因此在进行添加记录操作时,程序需要首先读取三个编辑框的内容,并检查其中的“文件名称”是否为空,如果为空,则提醒用户该项目不能为空,并中断添加记录的操作,如果不为空,则可以添加该记录。下面就是这部分代码的内容: void __fastcall TMainForm::BtnAddSongClick(TObject *Sender) 图9-1:事件页

最新C++builder实验二计算器及万年历程序开发汇总

C++b u i l d e r实验二计算器及万年历程序 开发

实验二计算器应用程序开发 一、实验目的 通过一个计算器简单的实例,让同学们进一步熟悉C++Builder集成开发环境,让学生掌握菜单控件、文本控件、按钮控件及常用对话框控件的使用。二、实验设备 1台PC、CB6开发环境等。 三、实验内容 1、学习BCB的一些常用函数; 2、开发一个简单的计算器处理程序 3、设计一个万年历应用程序 四、实验内容1——学习BCB的一些常用函数 每一控件对应都有各自的事件,以执行相应的程序,比如当按钮被单击时,我们可以为其单击事件写一段程序,用“双击”的方法可以从”控件“或”控件事件“切换到程序编辑区。 图(1)常用控件展示

(一)常用库函数: 1、字符串裁减函数:SubString(index,count) Index为字符串的序号,从1开始,count为要裁减的长度,如:String s=Edit1->Text; ShowMessage(s.SubString(1,2)); 2、十进制转16进制:IntToHex(n1,n2) n1为要转换的数, n2为转换的16进制的位数,如: int i=255; ShowMessage(IntToHex(i,2)); 3、字符串转数字:StrToInt(s) 如: String s=”1234”; int i=4321 + StrToInt(s); ShowMessage(i); 4、数字转字符串:IntToStr(n) 如: int i=4321; String s=”1234” + IntToStr(i); ShowMessage(s); (二)对话框类函数: 打开对话框: if(OpenDialog1->Execute()) { Memo1->Lines->LoadFromFile(OpenDialog1->FileName); } 保存对话框: if(SaveDialog1->Execute()) { Memo1->Lines->SaveToFile(SaveDialog1->FileName);

PowerBuilder函数详解

PowerBuilder函数详解 数组函数 ?LowerBound() LowerBound()功能得到指定数组第n维的下界。 语法LowerBound ( array {, n } ) 参数array:数组名n:数值类型,可选项,指定要得到数组哪一维的下界。缺省值为1返回值Long。函数执行成功时返回array数组第n维的下界。如果n的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值为NULL,LowerBound()函数返回NULL。 ?UpperBound() UpperBound()功能得到指定数组第n维的上界。 语法UpperBound( array {, n } ) 参数array:数组名n:数值类型,可选项,指定要得到数组哪一维的上界。缺省值为1 返回值Long。函数执行成功时返回array数组第n维的上界。如果n的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值为NULL,UpperBound()函数返回NULL。 Blob(大二进制对象)函数 ?Blob() Blob()功能将字符串转换成Blob类型数据。 语法Blob ( text ) 参数text:string类型,指定要转换的数据返回值Blob。函数执行成功时返回转换后的Blob类型数据;如果text参数的值为NULL,则Blob()函数返回NULL。 ?BlobEdit() 功能将任意类型的数据插入到Blob类型变量的指定位置。 语法BlobEdit ( blobvariable, n, data ) 参数blobvariable:Blob类型的已初始化变量,将向该变量中插入数据n:指定插入位置,有效值在1到4,294,967,295之间data:要插入到Blob类型变量中的数据,其数据类型可以是任何有效的PowerBuilder数据类型返回值Unsigned long。函数执行成功时返回下次可以插入数据的位置;如果blobvariable变量中空间不够或任何参数的值为NULL,则BlobEdit()函数返回NULL。 ?BlobMid() 功能从Blob变量中提取出一段数据。提取之后,原Blob变量内容不变。 语法BlobMid ( data, n {, length } )

C++builder教程大全

Borland C++ Builder 5.0是Inter pries(Borland)公司推出的基于C++ 语言的快速应用程序开发(Rapid Application Development,RAD)工具,它是最先进的开发应用程序的组件思想和面向对象的高效语言C++融合的产物。C++Builder 充分利用了已经发展成熟的Delphi 的可视化组件库(Visual Component Library,VCL),吸收了Borland C++ 5.0 这个优秀编译器的诸多优点。C++Builder 结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优秀编译器,调试器。发展到5.0版本,C++Builder 已经成为一个非常成熟的可视化应用程序开发工具,功能强大而且效率高。 C++Builder的特色: 1.C++Builder 是高性能的C++开发工具 C++Builder是基于C++的,它具有高速的编译,连接和执行速度。同时,C++Builder具有双编译器引擎,不仅可以编译C/C++程序,还能编译Object Pascal语言程序。 2.C++Builder是优秀的可视化应用程序开发工具 C++Builder是一完善的可视化应用程序开发工具,使程序员从繁重的代码编写中解放出来,使他们能将注意力重点放在程序的设计上,而不是简单的重复的劳动中。同时,它提供的完全可视的程序界面开发工具,从而使程序员对开发工具的学习周期大大缩短。 3.C++Builder具有强大的数据库应用程序开发功能 C++Builder 提供了强大的数据库处理功能,它使的程序员不用写一行代码就能开发出功能强大的数据库应用程序,这些主要依赖于C++Builder众多的数据库感知控件和底层的BDE数据库引擎。C++Builder除了支持Microsoft的ADO(Active Data Object)数据库连接技术,还提供了一种自己开发的成熟的数据库连接技术——BDE(Borland Database Engine)数据库引擎。 4.C++Builder具有强大的网络编程能力 C++Builder具有众多的Internet应用程序开发控件,如Web Broker,Cpp Web Browser,Win Socks 等,它们基本含盖了Internet应用的全部功能,利用它们程序员可以方便地建立自己地Internet 应用程序。 一.C++Builder5.0的集成开发环境(IDE,Integrated Development Environment) 1.C++Builder 5.0的IDE主界面

相关主题
相关文档
最新文档