DELPHI中TEECHART的属性介绍

合集下载

teechart控件用法

teechart控件用法

teechart控件用法
TeeChart是一个图表控件,可以在.NET应用程序中创建各种类型的图表。

使用TeeChart控件,您可以在应用程序中显示数据的图形表示形式,从而直观地分析数据并更好地理解数据。

以下是使用TeeChart控件的一般步骤:
1.在您的项目中添加TeeChart控件。

您可以通过在工具箱中拖放TeeChart控件来将其添加到您的窗体中。

2.配置TeeChart控件的属性。

您可以通过属性窗口或代码来配置TeeChart控件的属性,例如图表类型、数据系列、图例等。

3.为TeeChart控件添加数据。

您可以通过为TeeChart控件的Series属性添加数据来创建图表。

4.调整TeeChart控件的大小和其他属性。

您可以调整TeeChart 控件的大小和其他属性,以使其适合您的应用程序。

5.保存和运行您的应用程序。

保存您的项目并运行它,以查看您的图表是否按预期显示。

在使用TeeChart控件时,您可以使用许多不同的属性和方法来配置和控制图表的行为和外观。

例如,您可以更改图表的标题、轴标
签和图例,也可以更改数据系列的颜色和样式。

此外,您还可以使用TeeChart控件的事件来响应用户与图表交互的方式,例如单击或双击图表元素。

总之,使用TeeChart控件可以方便地在.NET应用程序中创建各种类型的图表,并且可以轻松地配置和控制图表的外观和行为。

teechart函数说明

teechart函数说明

teechart函数说明TeeChart是一款功能强大的图表绘制工具,它提供了丰富的图表类型和灵活的配置选项,可以帮助开发者快速、简便地创建各种类型的图表。

本文将对TeeChart的一些常用函数进行说明。

1. 创建图表使用TeeChart,我们可以轻松地创建各种类型的图表,如折线图、柱状图、饼图等。

创建图表的函数是Chart1.AddSeries,通过指定图表类型和数据源,即可创建一个新的图表系列。

例如,要创建一个折线图,可以使用以下代码:Chart1.AddSeries(TLineSeries).DataSource := DataSource1;这段代码将创建一个折线图系列,并将数据源设置为DataSource1。

2. 设置图表属性TeeChart提供了丰富的属性来配置图表的外观和行为。

通过设置这些属性,我们可以自定义图表的样式、颜色、字体等。

例如,要设置图表的标题和背景颜色,可以使用以下代码:Chart1.Title.Text := '销售数据';Chart1.Color := clWhite;这段代码将设置图表的标题为“销售数据”,并将背景颜色设置为白色。

3. 添加数据在创建图表系列后,我们需要向图表中添加数据。

TeeChart提供了多种方法来添加数据,如Add、AddXY、AddNull等。

例如,要向折线图中添加数据点,可以使用以下代码:Chart1.Series[0].AddXY(1, 10);Chart1.Series[0].AddXY(2, 20);Chart1.Series[0].AddXY(3, 15);这段代码将向第一个系列的折线图中添加三个数据点,分别是(1, 10)、(2, 20)和(3, 15)。

4. 设置图表样式TeeChart提供了多种样式选项,可以帮助我们改变图表的外观。

例如,我们可以设置图表的线条样式、填充样式、阴影效果等。

例如,要设置折线图的线条样式为虚线,可以使用以下代码:Chart1.Series[0].LinePen.Style := psDot;这段代码将设置第一个系列的折线图的线条样式为虚线。

teechart用法

teechart用法

teechart用法
TeeChart是一个用于创建丰富且高度可定制的图表的软件开发工
具包。

它提供了许多图表类型,包括线型图表、柱状图、饼图、雷达
图等。

以下是关于TeeChart的用法的一些重点:
1.安装和配置:首先,您需要下载并安装TeeChart的开发工具包。

一旦安装完成,您需要将TeeChart的库文件导入到您的项目中,并确
保配置正确。

2.创建图表对象:在您的应用程序中,您可以创建一个TChart对
象来代表您的图表。

您可以设置图表的大小、位置、颜色等属性。

3.添加数据系列:接下来,您可以添加一个或多个数据系列到图
表中。

每个数据系列代表着不同的数据集。

您可以设置数据系列的类
型(如线性、柱状、饼状等)、颜色、图例等属性。

4.填充数据:一旦您添加了数据系列,您需要为每个数据系列提
供数据。

您可以通过手动添加数据点或从数据源中动态加载数据来填
充数据系列。

5.定制化设置:TeeChart提供了丰富的定制化选项,使您能够根据您的需求自定义图表。

您可以更改图表的标题、坐标轴、图例、背景颜色等属性。

您还可以设置图表的交互功能(如缩放、选择、拖动等)。

除了这些基本用法之外,TeeChart还拥有其他一些功能和拓展,如导出图表为图像或PDF文件、实时更新图表数据、添加标签、图表打印等。

您还可以通过编程来实现动态的图表更新和交互,以及通过事件来响应用户操作。

总之,TeeChart是一个功能强大且灵活的图表工具包,可以帮助开发人员轻松地创建出美观且交互性强的图表应用程序。

Delphi之Tchart控件使用心得

Delphi之Tchart控件使用心得

Delphi之Tchart控件使用心得最近在学习delphi,做一个软件练手,用到Tchart控件,有些粗略的使用心得,供delphi初学者参考。

TChart是delphi里面一个标准的图形显示控件。

它可以静态设计(at design time)也可以动态生成。

可下载Steema TeeChart 7,没有源代码,能用就好!由于我要在同一个Chart界面显示不同的图形,需要动态编程实时绘制曲线。

一、添加Series之前,要删除已有的Series,只能从后往前删,否则出错:for i:=Chart1.SeriesCount-1 downto 0 dobeginChart1.Series[i].Free;end;二、运行时候创建一个Series, 有多种方法。

1.Var MySeries : TBarSeries ;MySeries := TBarSeries.Create( Self );MySeries.ParentChart := Chart1 ;2.Chart1.AddSeries( TBarSeries.Create( Self ) );3.Var MyClass : TChartSeriesClass;MyClass := TBarSeries ;Chart1.AddSeries( MyClass.Create( Self ) );在这里根据,用到循环结构动态添加多条Series。

for j:=0 to NXUGMU-1 dobeginseries:=TFastLineSeries.Create(Chart1);Chart1.AddSeries(Series); //动态增加seriesseries.LinePen.Width:=2; //设定线宽Chart1.Series[j].Title:='速度'+StrVelocity[j]; //动态标题randomize;end;三、在chart中画出的曲线某个点上标记出该点的值series.Marks.Visible:=True;Series.Marks.Style:=smsValue;四、固定TChart中的坐标,不使TChart中的坐标跟随Series的变化而变化//设置底座标with Chart1.BottomAxis dobeginAutomatic:=false;Minimum:=0;LabelStyle := talText;end;五、添加坐标值,自动绘制曲线Chart1.Series[j].AddXY(Xzhi,Yzhi,Label,color);。

TeeChart经验总结

TeeChart经验总结

TeeChart经验总结1.安装我使用的是Delphi5,所以所有的测试,代码均为D5版本,看的时候要有一颗兼容的心.第三方组件,尽量使用有源码的版本,方便修改问题,也方便看懂功能,不然改都没法改.安装TeeChart的话,推荐TeeChart Pro v8.01with Full Source。

目录中有一个exe名为:TeeRecompile.exe..运行它我不记得是否会自动给环境里加入Sources目录了.请在安装完成后检查Tools->Environment Options->Library->Directories->Library Path,是否包含了解压安装目录中的Sources目录.目前为止..安装结束..老版本的TeeChart安装,需要先卸载自身的TChart组件,也就是在Component->Install Packages中不加载Borland Decision Cube Components,然后再使用TeeChart的bpg安装Dcl*.dpk,然后添加Library Path.1TeeChart经验总结2.初识.完成了安装以后,在additional选项卡里,就可以选择TChart进行使用在Options->Language->Change中,可以修改TeeChart Editor为中文菜单,但是不推荐这样做,毕竟写代码还是得用英文的.Edit Chart:打开TeeChart Editor界面,可以进行Series,Axis,Wall之类的参数编辑.Print Preview:打印预览...Export Chart:可以将Chart导出图片之类的格式.Custom Axes:可以编辑自定义Axis,也就是轴Seires:可以编辑曲线序列,也就是数据集合.先贴一张TeeChart Editor的图.在编辑器里,可以对TChart的一系列参数进行修改,基本上所有的TChart功能都可以在Editor里通过修改参数的所见即所得的方式来得以实现.首先,TChart有一个Panel,这个是Axis,Series显示的基础.Axis也就是一般所说的轴,比如常说的坐标系里的X轴Y轴.Series顾名思义,是一个序列,也就是数据序列,Series要绑定在Axis才会显示出来,因为TeeChart里的Series种类众多,有常见的Line,Fastline,Bar,Point,Pie等等,所以抽象的理解其为一个离散的数据集合比2较好.先来看一个Demo,并说明这个Demo用到了TeeChart里的哪些功能,在以后的文章里会逐步解释名词定.义和功能的实现用到了2个自定义的Axis,4个FastLine的Sereis,将Legend(图列说明,也就是Series的名称颜色的集合显示)显示出来.使用了Titles中的Title,用于显示一些与图相关的信息.用到了几个Tools,一个用来显示Paging,一个用来显示所看到的游标内容.TeeChart经验总结3.Panel和WallsWalls为Series表现的区域,有Left,Right,Bottom,Back之分,其中Left,Right,Bottom都为3D显示时候用的,Back就是Series绘图区域.先说Panel,看图:34Color 是用来修改Panel 显示的颜色,如果Walls 的Transparent 属性为True,那么都会显示这个颜色,如果为False,就可以自行定义颜色显示.Bak Image Inside,顾名思义,就是让背景图片是否显示在Back Wall 里.Borders:用来设计Panel 的边缘,都很简单.Separation:是和Walls 的间隔.5Margins:边距,用来设置Panel 与Walls 的边距.有两种设置方式,一种是百分比,一种是像素.Gradient:渐变.背景的颜色渐变,这个应该是TeeChart 的新功能,Title,Tools,Panel,Walls 等都可以设置这个属性,这个功能不算复杂,不多介绍了.只要试试就明白了.6Shadow:阴影,同样很多部分都有这个属性.也一样..这个属性没什么好多说的.Image:图像.可以载入一个图像来替代背景.这个功能有点意思..因为还提供了Filters(滤镜).因为Axis 显示的时候是在Panel,所以Margins 可能因为Axis 的多少而需要调节.Titles,Legend 也同样要显示在Panel 上,需要考虑一下布局的问题.接下来说Walls,之前说过了Walls 是用来显示Series 的地方,而且Left,Right,Bottom 都是用来参与3D 效果的显示.Back Wall 比其他的Wall 多了一个Shadow 的属性,其他基本都一样,所以以下就只贴Back Wall 的图了.7Visible Walls:是否显示Walls,旁边的Size 是用于3D 显示时,Wall 的厚度.Color,Border,Gradient,Image,Shadow 这些属性基本和Panel 的一样.Pattern 为Wall 的填充图案.Position 表示该Wall 的显示区域.独立Wall 里的Size,也是指该Wall 的厚度.Transparency 依然是透明度的意思.因为Wall 为Series 的显示区域,在用色上除了要考虑习惯以外,打印图片时,最好将Gradient 取消,将Wall 和Panel 的颜色变为白色,这样可以节省打印的油墨.TeeChart 经验总结4.Titles 和LegendTitles 分为四个:Title,SubTitle,SubFoot,Foot.这4个的区别其实就是默认的位置.从名字也可以猜出.8Visible:可见.Adjust Frame:适应框架.应该是根据Text 内容调整以适应大小.Alignment:排列位置,在Positon 如果使用Custom,则这个属性失效.Text:该Title 显示的文字内容.Edit:编辑Text.Custom:前面提过了,可以自定义Title 的显示位置.Vert.Margin:垂直空白,是指和Wall 之间的距离.当Custom 选择时,则无效.9Color:背影颜色.Pattern:图案Transparent:透明,和Panel 属性一致(因为Title 显示在Panel 上)Transparency:透明度.其他如:Text,Gradient,Shadow,Picture 就不一一介绍了,都是常规属性.记住一点当Format->Transparent 被选择后,Gradient,Shadow,Picture 均失效,都继承Panel 的相应属性.//----------------------------------------------------------------------------------------------------------Legend 为Series 的说明,可以描述Series 的Names,Values,Last Values,等等.Visible:显示LegendInverted:反转显示顺序Font Series Color:使显示字体的颜色与Series颜色一致.Legend Style:Legend的显示内容,Automatic(自动),Series Names(名称,确切的说其实是Series的Title),Series Values(数据),Last Values(最后一个点的数据,所有的Series),Series Groups(没用过...). Text Value:和Legend Style对应的一些设置,不细说了.No Check Boxes:是否在对应Series前显示CheckBox或者RadioButton.可以直接选择是否显示该Series 在曲线上.Vert.Spacing:垂直间隔..Dividing Line:每个Item之间的分隔线Resize Chart,根据Legend的大小来调整Wall的大小Title:Legend的标题.10Border,Text,Gradient,Shadow,Picture这些和之前一些属性类似.TeeChart经验总结5.Axis开始写一些比较重要的内容了.Axis,坐标系里的坐标轴.TeeChart默认两个X轴:Top,Bottom;有若干个Y 轴.TeeChart的Y轴,可以显示在Wall的左边,也可以显示在Wall的右边,可以100%显示,也可以分段显示,意思就是可以在一个Axis的位置上分段显示多个Axis,每个Axis占用一部分.:如下图下面介绍一下Axis的属性左上角的Visible,可以关闭所有Axis的显示,之前提过Series的显示依赖于Axis,如果Axis被隐藏,则Series同样被隐藏.Behind:这个是3D显示用到的属性,将Axis显示在BackWall上还是显示在最前面.Left Axis,Right Axis,Top Axis,Bottom Axis,Depth Right,Depth Top:和名字的说法一样,都是TeeChart默认创建的Axis,也可以根据需要自行定义Axis.11Scales->Options->Automatic:根据所属该Seires的值自行设置Minimum,Maximum,Increment.Visible:单独控制该Axis的显示.Inverted:反向显示.Logarithmic:对数.可以以某对数为底,处理显示值.比如LogP-H图这种.Minimum,Maximum,Increment:这些就是设置Axis显示的最小值,最大值,以及增量..Titles->用来设置Axis显示的名称,也可以设置显示的角度Labels->显示Axis每个增量的数值.Mutile-Line:多行显示.Round First:感觉像是对第一个值取整.Label On Axis:在Axis也标记.Alternate:交替显示.Min.Separation%:Label的最小分隔.Style:显示风格.Size:Label占用的大小,如果设置为0,就是自动.Angle:Label显示的角度.Ticks->记号.Axis上小分隔的记号.1213Grid->设置Axis 的显示格线.如果Y 轴过多,最好只显示一个Axis 的Grid,不然显示起来会很乱.Grid..:用来设置线的属性,Width,Space 之类的.Z:3D 显示时用到的属性.Draw every:每几个分隔画一条Grid 线.Minor..:Grid 中的Grid.在前面Grid 中继续画Grid.Position->对于Vertical/Horizontal Axis 比较多的时候,Position 的设置就显得尤其重要了.Position %:设置Axis 的位置,如果是Vertical,没有选中Other side,那就是默认在左边的Axis,正就是向右,负就是向左.Start%,End%:这个就是前面那个多个Axis 实现方式.即每个Axis 占用的范围.Z%:3D 显示使用.Other side:Vertical Axis,不选中为Left,选中为Right;Horizontal Axis,不选中为Bottom,选中为Top,Position%均是从Wall 的边缘开始算起.Horizontal:选中就是水平方向的Axis,不选中就是垂直方向的Axis.Other side,Horizontal 都是自定义Axis 才可以使用的.//-----------------------------------------------------------------------------------------------14这是一个Axis 设定Demo 界面.其中使用为Create 和Visbile名称为Axis 的Title最小值为Axis 的Minimum最大值为Axis 的Maximum根据最小值和最大值来计算Increment 值.单位并不是Axis 的属性,在这里只是用于显示和Series 自动判断绑定在哪个Axis 的凭据.颜色就是Axis 的Color.X 坐标轴是每页可显示的范围,因为要用到分页.坐标轴格线即是Grid,如果Vertical,Horizontal 有多个的话,最好各只显示一个Axis 的Grid.TeeChart 经验总结6.Series 之1:LineTeeChart 提供了很多类型不同的Series,下面是比较常用的.创建Series 可以通过TeeChart Editor,如下View下面,可以选择显示或者使用代码创建,如下Series Name(选中就可以修改Name,不选中可以修改Title),Series Group;可以创建Series Group进行管理.Clone可以复制一个新的Series,Change可以修改已经创建好的Series的类型.Series:=TFastLineSeries.Create(aChart);//线所在ChartSeries.ParentChart:=aChart;//指定自定义AxisSeries.CustomVertAxis:=aAxis;//线宽度Series.Pen.Width:=aPenWidth;//线颜色Series.Color:=aColor;//线名称Series.Title:=aTitle;Series常用的添加数据函数Function Add(Const AValue:Double;Const ALabel:String='';AColor:TColor=clTeeColor):Integer;overload;virtual;Function AddArray(Const Values:Array of TChartValue):Integer;overload;Function AddNull(Const Value:Double):Integer;overload;Function AddNull(Const ALabel:String=''):Integer;overload;virtual;Function AddNullXY(Const X,Y:Double;Const ALabel:String=''):Integer;virtual;Function AddX(Const AXValue:Double;Const ALabel:String='';AColor:TColor=clTeeColor):Integer;Function AddXY(Const AXValue,AYValue:Double;Const ALabel:String='';AColor:TColor=clTeeColor):Integer;virtual;Function AddY(Const AYValue:Double;Const ALabel:String='';AColor:TColor=clTeeColor):Integer;15下面开始说LineSeries.Color...:Line Series的颜色.Pattren...:还是用于3D显示的图案.Drak3D:3D阴影.Color Each,Color Each Line:每个点之间的线一种颜色,这个被选中,则Color属性无效.Clickable:可点击.Line Mode:Stairs:阶梯;Inverted:反转.OutLine:轮廓.这个功能实现的很怪,如果修改了这个,则Series Color无效.Height3D:3D显示下Line的高(厚)度.Stack:这是一个比较复杂的设置.当有多个Line Series的时候,这个属性用来表示这些个Line Series的关系.None:在3D显示中,每个Line Series一个独立的ZOrder.1617Stack,Stack100:比较Line 数值,前者使用实际值,后者使用0-100.数学比较差..不知道该如何描述.Treat Nulls:处理空值.分为:Don't Paint(不绘),Skip(跳过),Ignore(忽略).Series 里有一个基础方法AddNull.Shadow:3D 显示的时候没有试出来,2D 显示的时候很明显.Gradient:3D 显示时将Z 上颜色渐变色.18Line 其实是通过AddXY 或者类似的函数添加的点连接而成的曲线,Point 就是是否来显示这个点,以及显示这个点的属性.大部分的属性之前都介绍过.Show In Legend:显示在Legend 中.Cursor:游标,只有当之前的Clickable 被选中,这个属性才有用.Depth:单独设置Line Series 的深度,如果选择Auto,则和Chart 整体保持一致.Horizontal Axis:指定Line Series 的水平Axis.Vertical Axis:指定Line Series 的垂直Axis.DateTime:把Axis 的值设置为时间.设置这个属性只要修改Series.XValues.DateTime 或者Series.YValues.DateTime 即可.做柱形图的月份统计,这个属性经常被用到.Formats:设置显示值的格式.Show In This Editor:是否显示在TeeChart Editor内..Sorts:排序TSeriesMarksStyle=(smsValue,{1234}smsPercent,{12%}smsLabel,{Cars}smsLabelPercent,{Cars12%}smsLabelValue,{Cars1234}smsLegend,{(Legend.Style)}smsPercentTotal,{12%of1234}smsLabelPercentTotal,{Cars12%of1234}smsXValue,{1..2..3..or21/6/1996}smsXY,{123456}smsSeriesTitle,{Series1}//8.0smsPointIndex,{1..2..3...}//8.0smsPercentRelative{100%..90%..120%...}//8.0);其他的比如Arrows(箭头),Symbol(符号,这个和之前在Legend中介绍的那个属性一样),剩下的属性之前都提到过.19TeeChart经验总结7.Series之2:Bar以后不贴TeeChart Editor的图了.尽量文字说明,也方便查找属性.BarSeries.BarStyle Bar的显示类型//矩形,椎体,倒椎体//圆筒,椭圆,箭头,渐变矩形,圆锥体,斜面//斜立方体,钻石型,反箭头,倒圆锥体TBarStyle=(bsRectangle,bsPyramid,bsInvPyramid,bsCilinder,bsEllipse,bsArrow,bsRectGradient,bsCone,bsBevel,bsSlantCube,bsDiamond,bsInvArrow,bsInvCone);BarSeries.ColorEachPoint每个Bar独立颜色BarSeries.Brush.Style刷子类型,也就是Bar的显示图案BarSeries.Brush.ColorBarSeries.Brush.BackColorBarSeries.Brush.Image以上四个属性,就是TeeChart Editor里的Pattern设置.TBrushStyle=(bsSolid,bsClear,bsHorizontal,bsVertical,bsFDiagonal,bsBDiagonal,bsCross,bsDiagCross);BarSeries.Gradient渐变色,配合bsRectGradient使用.BarSeries.TickLines标记线,用于在Bar上画分隔线.BarSeries.Dark3D3D投影效果显示BarSeries.DepthBarSeries.DepthPercentBarSeries.CustomBarWidthBarSeries.BarWidthPercentBarSeries.OffsetPercent以上为设置Bar Series的深度(3D显示),深度百分比(和Chart设置的3D设置比);宽度,宽度百分比;位移(水平方向).BarSeries.Shadow用于显示阴影,在3D和2D下均可显示.BarSeries.BarPen用来设置Bar外框的一些显示属性.BarSeries.MultiBar多个Bar的显示方式.TMultiBar=(mbNone,mbSide,mbStacked,mbStacked100,mbSideAll,mbSelfStack);贴个图,比较清楚:20BarSeries.ShowInLegendBarSeries.CursorBarSeries.AutoBarSizeBarSeries.CustomHorizAxisBarSeries.CustomVertAxisBarSeries.ValueFormatBarSeries.PercentFormatBarSeries.ShowInEditor之前介绍过.BarSeries.Marks用于显示标记.Demo下面是i:Integer;beginBarSeries.Clear;for i:=1to12dobeginwith BarSeries dobeginAddXY(i,Random(1000),Format('%.2d月',[i]));end;end;end;21TeeChart经验总结8.Series之3:Horizontal Bar&AreaHorizontal Bar属性和Bar一致,只是坐标系顺时针转90度.如下图.Area如下图AreaSeries.Stairs阶梯,在Add**函数中,从N点到N+1点之间均为添加的Y值.如果AreaSeries.InvertedStairs为True,则是从N点N-1点之间均为添加的Y值.Pattern对应AreaSeries.AreaChartBrushBorder对应AreaSeries.LinePenTop对应AreaSeries.BrushArea Lines对应AreaSeries.AreaLinesPenTransparency对应AreaSeries.TransparencyDrak3D对应AreaSeries.Dark3DColor Each对应AreaSeries.ColorEachPointColor对应AreaSeries.SeriesColorTreatNulls对应AreaSeries.TreatNullsTTreatNullsStyle=(tnDontPaint,tnSkip,tnIgnore);Stack->Multi Areas对应AreaSeries.MultiAreaStack Group对应AreaSeries.StackGroupUse Origin对应eYOriginOrigin对应AreaSeries.YOrigin2223TeeChart 经验总结9.Series 之4:Pie&OthersTeeChart 自带的PieDemo 就很能说明问题.Explode biggest 对应Pie.ExplodeBiggest;将最大的一块slice 推出.Total Angle 对应Pie.AngleSize;所有slice 的总角度.Dark Border 对应Pie.DarkPen;每一块slice 的边界线.Dark 3D 对应Pie.Dark3D;slice 侧边的阴影.Patterns 对应ePatterns;是否给slice 使用图案.Multiple Pies 对应Pie.MultiPie:TMultiPie=(mpAutomatic,mpDisabled);如果Chart 内有多个Pie,如何显示.Gourp Slices.Style 对应Pie.OtherSlice.Style;TPieOtherStyle=(poNone,poBelowPercent,poBelowValue);Gourp Slices.Value 对应Pie.OtherSlice.ValueGourp bel 对应Pie.OtherSlice.TextGourp Slices.Legend 对应Pie.OtherSlice.Legend这些属性是为了使Value 低于总百分比(poBelowPercent)或者低于数值(poBelowValue)这些数值之和,显示为Label 的新slice.比如处理一些较小的值,显示为Other.Color Each slice 对应Pie.ColorEachPointColor palette对应Pie.ParentChart的ColorPaletteIndexColor对应Pie.SeriesColorAuto Mark Position对应Pie.AutoMarkPosition;自动设置Mark的位置Vertical center callout对应Pie.PieMarks.VertCenter;垂直居中显示Callout Leg size对应Pie.PieMarks.LegSize;Mark脚线的长度(以下属性和TCircledSeries通用)Circled对应Pie.Circled;显示成圆(而不是椭圆)3Dimensions对应Pie.ParentChart.View3DRotation对应Pie.RotationAngle;旋转角度Radius.Horizontal对应Pie.CustomXRadius水平半径Radius.Vertical对应Pie.CustomYRadius垂直半径(以上属性和TCircledSeries通用)Point:离线并不连接的点.常用属性之前都介绍过.Fast Line:简化版的Line,取消了3D显示,取消了Stack等功能.Horizontal Line:XY互换的Line.Horizontal Area:XY互换的Area.Bubble:泡泡.其实感觉更像是立体彩色版本的Point..Gantt:甘特图Extended:扩展.2425Financial:金融.Stats:统计.3D:Gauges:仪表.26Other:Maps:地图.2728TeeChart经验总结10.Zoom&ScrollZoom.Allow对应TheChart.Zoom.Allow;是否允许Zoom.Zoom.Animated对应TheChart.Zoom.Animated;演示Zoom的动画.Zoom.Steps对应TheChart.Zoom.AnimatedSteps;Zoom动画的步数.Zoom.Pen对应TheChart.Pen;Zoom.Pattern对应TheChart.Zoom.Brush;Zoom.Minimum pixels对应TheChart.Zoom.MinimumPixels;最小可执行Zoom的像素,即用户选中的Zoom框的最小大小.Zoom.Direction对应TheChart.Zoom.Direction;Zoom的方向,TTeeZoomDirection=(tzdHorizontal, tzdVertical,tzdBoth);Zoom.Mouse Button对应TheChart.Zoom.MouseButton;实现Zoom的鼠标键,TMouseButton=(mbLeft, mbRight,mbMiddle);Zoom.Zoom on Up Left Drag对应TheChart.Zoom.UpLeftZooms;默认的话,是向右下方(右上方也是)的拖放为Zoom,向左上方(左下方也是)的拖放为复位,如果选中了这个属性,则向左上方(左下方也是)也为Zoom.Scroll.Allow Scroll对应TheChart.AllowPanning;Scroll允许的方向,TPanningMode=(pmNone,pmHorizontal,pmVertical,pmBoth);//不允许,水平,垂直,水平和垂直. Scroll.Mouse Button对应TheChart.ScrollMouseButton;当按住这个MouseButton的时候,就实现Scroll. Cursor对应TheChart.Cursor.TeeChart经验总结11.Tools不记得是从7.0还是8.0,TeeChart提供了丰富的Tools.这是一个纯用TeeChart的Tools实现的简易游标Demo.本节后面会附上全部源码.Clip Series:当Series被拖动超出了Axis的范围,则超出的部分不显示.Cursor:十字,垂直,水平方向的游标,可以具体Snap任意Series的相应方向上的数据点.Drag Marks:可以任意拖动位置的Marks.Drag Point:可以任意移动绑定Series的数据点.Draw Line:在Chart上画线.Extra Legend:扩展Legend,可以在Chart再显示若干个Legend.fibonnaci:斐波那契数29Gantt Drag:可拖动的甘特图Image:图片Legend Palette:用Series的颜色显示Legend颜色Mark Tips:鼠标移动到Mark上,会显示出Hint提示.Nearest Point:移动鼠标,会找到离鼠标最近的Series上的一点.Pie Slices:移动鼠标到Pie Slices上,会高亮被鼠标移动到的slice.Region:填充Series和某个值之间的区域.Series Animation:显示动画,比如柱状图从0增加到设定值.Series Band:填充2个Series之间的区域.Statistics:统计资料,可以显示一个Series的一些统计资料.比如平均值,最大值,最小值,多少个值等等. Surface Nearest:找到表面最近的点,并且高亮.Axis Arrow:在Axis上添加2个方向的箭头,可以进行相应方向的Scroll操作.Axis Scroll:可以用鼠标直接拖动Axis进行数据范围的变更.Color Band:用彩色带填充Axis区域的背景颜色.Color Line:用彩色线(可以允许拖动)显示在相应Axis的区域.Grid Band:用2种颜色带交替填充相应Axis的区域.2D Lighting:有点类似探照灯一样的效果...3D Grid Transpose:交换3D Series的数据,行,列.Annotation:注释,可以在Chart里任意位置显示一段文字.Anti-Alias:平滑线的尖角.Banner:横幅,可以实现滚动字.Data Table:显示一个Series的数据表格.Fader:淡入/淡出一个Chart.Frame:显示一个包围Chart的框架(相框效果).Full Screen:将Chart全屏显示,然后用Alt+F4或者Esc返回.Legend Scrollbar:Legend的滚动条Link:在Chart里显示一个超级链接.Magnify:一个可以来回拖动的放大镜.Page Number:显示Chart的当前页/总页数(也可以提供切换页的按钮).Rectangle:一个可以拖动,可以改变大小的文字显示框.Rotate:可以360度任意角度旋转Chart.Selector:可以设置选择任何在Chart中的子组件,比如Title,Series等等.组合Hint,可以显示出选中的是什么组件.SubChart:在Chart里再内置子Chart.Text3D:显示3D的注释.Transpose Series:交换Series的行列.Video Creator:创建一段Chart图像的AVI.Video Player:在Chart里播放AVI.下面是之前提到的Demo.dfm文件:object Form1:TForm1Left=192Top=190Width=870Height=500Caption='Form1'30Color=clBtnFaceFont.Charset=DEFAULT_CHARSETFont.Color=clWindowTextFont.Height=-11='MS Sans Serif'Font.Style=[]OldCreateOrder=FalseOnCreate=FormCreatePixelsPerInch=96TextHeight=13object Button_FillData:TButtonLeft=744Top=48Width=75Height=25Caption='填充数据'TabOrder=0OnClick=Button_FillDataClickendobject CheckBox_Cursor:TCheckBoxLeft=752Top=88Width=57Height=17Caption='游标'TabOrder=1OnClick=CheckBox_CursorClickendobject CheckBox_LockY:TCheckBoxLeft=752Top=120Width=97Height=17Caption='Lock Cursor Y'TabOrder=2OnClick=CheckBox_LockYClickendobject Chart1:TChartLeft=24Top=32Width=681Height=409Title.Text.Strings=('TChart')TabOrder=3end31endpas文件:unit Unit1;interfaceusesWindows,Messages,SysUtils,Classes,Graphics,Controls,Forms,Dialogs,TeEngine,Series,StdCtrls,ExtCtrls,TeeProcs,Chart,TeeTools;typeTForm1=class(TForm)Button_FillData:TButton;CheckBox_Cursor:TCheckBox;CheckBox_LockY:TCheckBox;Chart1:TChart;procedure Button_FillDataClick(Sender:TObject);procedure FormCreate(Sender:TObject);procedure CheckBox_CursorClick(Sender:TObject);private{Private declarations}FFLS1,FFLS2:TFastLineSeries;FCursorTool:TCursorTool;FAnnotationTool:TAnnotationTool;procedure CursorChange(Sender:TCursorTool;x,y:Integer;Const XValue,YValue:Double;Series:TChartSeries;ValueIndex:Integer);public{Public declarations}end;varForm1:TForm1;implementation{$R*.DFM}procedure TForm1.Button_FillDataClick(Sender:TObject);beginFFLS1.FillSampleValues(20);FFLS2.FillSampleValues(20);end;constLabelInv=10;32procedure TForm1.CursorChange(Sender:TCursorTool;x,y:Integer;const XValue,YValue:Double;Series:TChartSeries;ValueIndex:Integer);varStr:string;TmpX,TmpY:Integer;beginFAnnotationTool.Visible:=False;if not Assigned(Series)thenExit;if Series.XValues.Count<=0thenExit;Str:=Format('X Value=%.2f',[XValue])+#13#10+Format('%s YValue=%.2f',[FFLS1.Title,FFLS1.YValues[ValueIndex]])+#13#10+Format('%s YValue=%.2f',[FFLS2.Title,FFLS2.YValues[ValueIndex]]);FAnnotationTool.Text:=Str;TmpX:=x+LabelInv;if TmpX+FAnnotationTool.Width>Chart1.ChartRect.Right-LabelInv thenTmpX:=x-FAnnotationTool.Width-LabelInv;if CheckBox_LockY.Checked thenbeginTmpY:=Chart1.ChartRect.Top+LabelInv;if TmpY+FAnnotationTool.Height>Chart1.ChartRect.Bottom-LabelInv thenTmpY:=Chart1.ChartRect.Bottom-Height-LabelInv;endelsebeginTmpY:=Chart1.GetCursorPos.y+LabelInv;if TmpY+FAnnotationTool.Height>Chart1.ChartRect.Bottom-LabelInv thenTmpY:=Chart1.ChartRect.Bottom-FAnnotationTool.Height-LabelInv;end;if TmpY<Chart1.ChartRect.Top+LabelInv thenTmpY:=Chart1.ChartRect.Top+LabelInv;FAnnotationTool.Top:=TmpY;FAnnotationTool.Left:=TmpX;FAnnotationTool.Visible:=FCursorTool.Visible;end;procedure TForm1.FormCreate(Sender:TObject);begin//调整TeeChart属性Chart1.Legend.Visible:=True;Chart1.Legend.Alignment:=laTop;Chart1.View3D:=False;Chart1.Zoom.Allow:=False;Chart1.AllowPanning:=pmNone;33//创建Seriesif not Assigned(FFLS1)thenbeginFFLS1:=TFastLineSeries.Create(Self);FFLS1.ParentChart:=Chart1;FFLS1.Title:='Test Series1';end;if not Assigned(FFLS2)thenbeginFFLS2:=TFastLineSeries.Create(Self);FFLS2.ParentChart:=Chart1;FFLS2.Title:='Test Series2';end;//创建ToolsFCursorTool:=TCursorTool.Create(Chart1);FCursorTool.ParentChart:=Chart1;FCursorTool.Active:=False;FCursorTool.Pen.Color:=clRed;FCursorTool.Style:=cssVertical;FCursorTool.Series:=FFLS1;FCursorTool.Snap:=True;FCursorTool.OnChange:=CursorChange;FAnnotationTool:=TAnnotationTool.Create(Chart1);FAnnotationTool.ParentChart:=Chart1;FAnnotationTool.Active:=False;FAnnotationTool.PositionUnits:=muPixels;FAnnotationTool.Shape.CustomPosition:=True;FAnnotationTool.Shape.Gradient.Visible:=True;FAnnotationTool.Shape.Transparency:=30;end;procedure TForm1.CheckBox_CursorClick(Sender:TObject);beginFCursorTool.Visible:=CheckBox_Cursor.Checked;FAnnotationTool.Visible:=CheckBox_Cursor.Checked;end;end.34TeeChart经验总结12.Export之1.图像保存TeeChart提供比较丰富的图像保存(处理),和数据保存.先说图像保存.BMP:Flex:GIF:JPG:35MetaFile:PCX:PDF:36PostScript:SVG:SVG:37VML(HTM):XAML(WPF):38Binary://uses TeeExport;Procedure SaveTeeToFile(APanel:TCustomTeePanel;Const AName:String);Procedure SaveTeeToStream(APanel:TCustomTeePanel;AStream:TStream);//uses TeeStore;//TextFormat=False;Procedure SaveChartToFile(AChart:TCustomChart;Const AFileName:String;IncludeData:Boolean=True;TextFormat:Boolean=False);Procedure SaveChartToStream(AChart:TCustomChart;AStream:TStream;IncludeData:Boolean=True;TextFormat:Boolean=False);Text://uses TeeStore;//TextFormat=True;Procedure SaveChartToFile(AChart:TCustomChart;Const AFileName:String;IncludeData:Boolean=True;TextFormat:Boolean=False);Procedure SaveChartToStream(AChart:TCustomChart;AStream:TStream;IncludeData:Boolean=True;TextFormat:Boolean=False);XML://uses TeeStore;Procedure SaveChartToXMLFile(AChart:TCustomChart;Const AFileName:String;IncludeData:Boolean=True;XMLHeader:Boolean=True);Procedure SaveChartToXMLStream(AChart:TCustomChart;AStream:TStream;IncludeData:Boolean=True;XMLHeader:Boolean=True);39创建对象的时候,第二个参数为nil,则为全部的Series,否则为指定的Series对象.另外,除了XML以外,IncludeColors好像都没有用处.一般数据导出,我都用Cnpack的CnXlsWriter,和TeeChart的TSeriesDataXLS采用的都是直接写XLS 格式的方式,但是自由度大很多.Text://uses TeeExport;varaSeriesDataText:TSeriesDataText;beginaSeriesDataText:=TSeriesDataText.Create(Chart,nil);//nil=allaSeriesDataText.TextDePmiter:=';';//'',',',tab.....aSeriesDataText.TextQuotes:='''';//'"'.....aSeriesDataText.IncludeLabels:=True;aSeriesDataText.IncludeIndex:=True;aSeriesDataText.IncludeHeader:=True;aSeriesDataText.IncludeColors:=True;aSeriesDataText.SaveToFile('test.txt');aSeriesDataText.Free;end;XML://uses TeeExport;varaSeriesDataXML:TSeriesDataXML;beginaSeriesDataXML:=TSeriesDataXML.Create(Chart,nil);//nil=allaSeriesDataXML.IncludeLabels:=True;aSeriesDataXML.IncludeIndex:=True;aSeriesDataXML.IncludeHeader:=True;aSeriesDataXML.IncludeColors:=True;aSeriesDataXML.SaveToFile('test.xml');aSeriesDataXML.Free;end;HTML://uses TeeExport;varaSeriesDataHTML:TSeriesDataHTML;beginaSeriesDataHTML:=TSeriesDataHTML.Create(Chart,nil);//nil=allaSeriesDataHTML.IncludeLabels:=True;aSeriesDataHTML.IncludeIndex:=True;aSeriesDataHTML.IncludeHeader:=True;aSeriesDataHTML.IncludeColors:=True;aSeriesDataHTML.SaveToFile('test.html');40aSeriesDataHTML.Free;end;Excel(XLS)://uses TeeExport;varaSeriesDataXLS:TSeriesDataXLS;beginaSeriesDataXLS:=TSeriesDataXLS.Create(Chart,nil);//nil=allaSeriesDataXLS.IncludeLabels:=True;aSeriesDataXLS.IncludeIndex:=True;aSeriesDataXLS.IncludeHeader:=True;aSeriesDataXLS.IncludeColors:=True;aSeriesDataXLS.SaveToFile('test.xls');aSeriesDataXLS.Free;end;41。

Delphi常用组件和属性说明

Delphi常用组件和属性说明

Delphi常用组件及属性说明ALIGN 设置组件对齐(同其父容器)方式BORDERSTYLE 设置组件边框形状CAPTION 设置组件标题CTL3D 设置组件边框是否为3D模式,若BORDERSTYLE设置为BSNONE则此属性无效COLOR 设定组件背景颜色CURSOR 设定鼠标经过组件时光标所显示的形状ENABLED 设定组件是否能使用,当设为FALSE时组件会呈灰色FONT 设定组件内文字的字型、字体大小、颜色等HEIGHT 设定组件高度HELPCONTENT 用来为帮助说明文件中的索引值建立关联LEFT 设定组件与父组件左边框间的距离POPUPMENU 设定鼠标右键(弹出式)快捷菜单TABORDER 设定组件在按下TAB键后焦点(FOCUS)移动的顺序TABSTOP 若设为FALSE,则按TAB键后焦点并不会在此组件上停留TOP 设定组件与父组件上边框间的距离VISIBLE 设定组件是否可见,此属性只在执行时起作用WIDTH 设定组件显示宽度DELPHI常见事件说明:ONCHANGE 当组件有所改变时触发的事件ONCLICK 当在此组件上按下鼠标左键时触发的事件ONDBLCLICK 当在此组件上双击鼠标左键时触发的事件ONENTER 当焦点进入此组件时触发的事件ONEXIT 当切换到其它组件使该组件失去焦点时触发的事件,但当切换到另一窗体或另一应用程序时此事件不会触发ONKEYDOWN 当在拥有焦点的组件上按下某个键时触发的事件,按键包括所有的英文、数字键、方向键、功能键等ONKEYPRESS 当在拥有焦点的组件上按下某个键时触发的事件,但按键只包括所有的英文、数字键、TAB、BACKSPACE、ENTER、ESCONKEYUP 当使用者放开键盘上的按键时触发的事件,按键看ONKEYDOWN ONMOUSEDOWN 当鼠标键在某个组件按下时触发的事件(其参数包括哪个鼠标键被按下、是否有特殊键(CTRL、ALT、SHIFT)被按下以及鼠标当前的坐标)ONMOUSEMOVE 当鼠标在组件内移动时触发的事件ONMOUSEUP 当鼠标键在组件上方放开时所触发的事件ONPAINT 在组件需要被重画时触发的事件,此时可进行自定义画法窗体组件(FORM)常见属性及事件属性说明ACTIVE 指示此窗体是否拥有FOCUSACTIVECONTROL 指示窗体中目前拥有FOCUS的组件ACTIVEMDICHILD 指示主窗体中目前拥有FOCUS的子窗体ACTIVEOLECONTROL 用于取得或设定此窗体上的OLE控制,以响应FOCUS改变BORDERICONS 指定哪些ICON显示在窗体的TITLE BAR上BORDERSYTLE 用以指定窗体BORDER外观及行为CANVAS 提供使用者可在窗体上CLIENT内自行显示的画板,一般在ONPAINT事件中使用CLIENTHANDLE 提供可存取系统内部使用的MDI CLIENT WINDOW HANDLE CLIENTHEIGHT 窗体客户区高度CLIENTRECT 窗体客户区所对应的矩形CLIENTWIDTH 窗体客户区宽度DEFAULTMONITOR 指定此窗体所显示的预设的显示器,用于多显示器环境下DESIGNER 此窗体的设计界面,一般不用用户设定DropTARGET 用以指定窗体是否为目前DRAG AND Drop动作的目标FLOATING 用以指示此窗体是否正在停泊在另一个视窗内FORMSTATE 用于指示此窗体所处状态FORMSTYLE 用于指示窗体的样式HELPFILE 用于指定HELP文件ICON 指定窗体最小化时所显示的ICONKEYPREVIEW 指定此窗体是否需在目前的ACTIVE组件之前取得键盘输入MDICHILDCOUNT 用于取得子窗体数目MDICHILDREN 用于取得子窗体(数组)MENU 用于指定窗体主菜单MODALRESULT 当窗体作用为MODAL对话框时,作为对话框的效果MONITOR 用于指示窗体所显示的显示器OLDCreateORDER 指定ONCreate和ONDESTROY事件何时发生OLEFORMOBJECT 对包含在此窗体内的OLE对象指定OLEFORM界面PARENT 设定此窗体的PARENTPARENTBIDIMODE 指定是否此窗体使用PARENT的BIDIMODEPIXELSPERINCH 表示此窗体设计时系统上字形的比例POSITION 表示此窗体的大小及位置PRINTSCALE 表示此窗体打印的比例SCALED 用于指定窗体的大小是否依据PIXELSPERINTCH属性来指定TILEMODE 用于指定TILE方法被调用时子窗体如何排列VISIBLE 用于设定此窗体是否被显示WINDOWMENU 如果窗体是一个MDI PARENT窗体,用于指定视窗的菜单WINDOWSTATE 用于指定窗体如何显示于屏幕中事件说明ONPAINT 当窗体必须重画时发生ONHELP 当窗体收到HELP请求时发生ONDRAGDrop 当一个对象拉进此窗体并丢下时发生ONDRAGOVER 当一个对象拉进此窗体时发生ONCONSTRAINEDRESIZE 在ONCANRESIZE事件发生后发生ONCANRESIZE 当企图改变窗体尺寸时确认是否改变ONRESIZE 当窗体尺寸改变时发生ONSTARTDOCK 当对象开始停泊时发生ONENDDOCK 当对象停泊结束时发生ONUNDOCK 当窗体解除停泊时发生ONDOCKDrop 当其它窗体停泊到此组件时发生ONDOCKOVER 当其它窗体向此组件停泊接近时发生ONGETSITEINFO 当有关停泊消息传回此窗体时发生ONCreate 当窗体创建时发生ONCLOSE 当窗体即将关闭时发生ONCLOSEQUERY 在窗体即将关闭时确认是否真的关闭窗体ONDESTROY 当窗体释放时发生ONSHOW 当窗体显示时发生ONHIDE 当窗体隐藏时发生ONACTIVATE 当窗体获得FOCUS时发生ONDEACTIVATE 当窗体失去FOCUS时发生菜单组件(MAINMENU、POPUPMENU)常见属性属性说明AUTOMERGE 用于指定主窗体的主菜单是否与其它的窗体主菜单合并HANDLE 主菜单的视窗代码BIDIMODE 用于指定选项名是由左至右读或由右至左读IMAGES 用于指定选项旁可显示的图像内容ITEMS 选项的内容OWNERDRAW 用于指定选否是否可自行显示PARENTBIDIMODE 用于指定是否继承父控件的BIDIMODE属性WINDOWHANDLE 使用此菜单的视窗代号菜单项属性说明ACTION 用于指定此选项对应的动作BITMAP 用于指定在此选项旁的图像内容BREAK 用于指定是否从此选项开始建立新的分栏CAPTION 选项显示的名称CHECKED 用于指定此选项是否CHECKEDCOMMAND 用于指定选项对应的WINDOWS COMMAND IDCOUNT 用于指示此选项的子选项数目DEFAULT 用于指示此选项是否为子菜单的预设项目EANBLED 用于指示此选项是否可用GROUPINDEX 用于指定此选项所隶属的逻辑群组,以控制主菜单之间的合并或单选钮互斥的效果HANDLE 对应此选项的Drop-DOWN菜单的WINDOWS MENU HANDLEHELPCONTEXT 对应此选项的HELP CONTEXT IDHINT 用于设定鼠标移入选项范围时的提示信息IMAGEINDEX 用以指定哪个图像显示于选项旁ITEMS 此选项的子菜单项目数MENUINDEX 此选项的父菜单内的选项索引值PARENT 此选项的父菜单的选项RADIOITEM 用于设定此选项是否与同组其它选项互斥SHORTCUT 用于设定此选项的快捷键VISIBLE 用于设定此选项是否可见标签(LABEL)常用属性:属性说明ALIGNMENT 用于设定标签内文本的对齐方式(水平方向)。

Delphi 7组件参考大全

Delphi 7组件参考大全

说明:由于每个组件的属性、方法和事件众多,本人也不能一一说的很清楚,还是请大家在实际的过程中不断的琢磨,积累经验吧。

Additional组件页1、TBitBtn组件:该组件是表面显示位图的位图按钮组件,该组件的行为与Tbutton组件相同。

虽然一个TBitBtn组件只能与一个位图相关联,但该位图可以平分为4个部分,分别在按钮处于弹起、按下、禁止和单机状态时显示。

2、TSpeedButton组件:该组件是一个按钮,用于执行一个命令。

该组件与Tbutton、Tbitbtn不同,它不是从窗口组件派生的,因此,没有windows句柄,不能获得焦点。

但是,该组件具有单机事件,并且能够存储位图。

3、TMaskEdit组件:该组件用于建立掩码文本编辑框,这种文本编辑框与用Edit和RichEdit建立的文本框不同在于规定了文本的格式(即掩码)以避免用户输入非法格式的文本。

4、TStringGrid组件:该组件是一个字符串表格组件,用于简化字符串与关联对象间的操作。

该组件提供了许多属性来控制表格的外观,同时也提供了许多方法、事件以电子表格的形式响应用户的动作,此外,该组件还将表格中的字符串关联一个对象,这些对象通过字符串封装了一些信息和行为供用户使用。

5、TImage组件:用TImage组件在窗体上显示一张图片,用TPicture对象在Picture属性中指定一个图标、图元文件、位图图像或用户定义的图像。

6、TShape组件:该组件用于绘制简单的集合图形,如椭圆和正方形等。

该组件引入的属性描述了用于绘制几何图形轮廓的画笔和用于填充的画刷。

如果图形只是TCustomControl对象的图像的一部分,则应使用组件的Canvas方法。

7、TBevel组件:该组件用于建立具有3D和雕刻效果的直线和方框,该组件表示一个斜角轮廓,用其可创建斜角的盒子、方框或线,斜角可用凸起或凹陷状态显示。

8、TScrollBox组件:该组件是一个滚动框组件,用于在窗口中建立一个滚动区域。

teechart用法

teechart用法

teechart用法TeeChart 是一款功能强大的图表库,为开发人员提供了丰富的图表类型和定制化选项。

本文将介绍 TeeChart 的基本用法,以帮助读者更好地使用该工具。

TeeChart 的安装和基本配置TeeChart 可以在多个开发环境下使用,包括 Delphi、Java、.NET 等。

下面将以 Delphi 为例,介绍 TeeChart 的安装和基本配置步骤。

首先,下载并安装 TeeChart 的最新版本。

安装程序将指导您完成安装过程,确保您选择了适合您的开发环境的版本。

安装完成后,在您的开发环境中创建一个新项目。

在项目中,您需要添加 TeeChart 的组件库,以便可以在项目中使用 TeeChart。

在 Delphi 中,您可以通过选择 "Component" 菜单下的 "Install Packages" 选项来打开组件安装对话框。

在对话框中,选择 TeeChart 组件并点击 "OK" 按钮,即可将 TeeChart 组件添加到您的开发环境中。

使用 TeeChart 绘制基本图形一旦您已经完成了 TeeChart 的安装和配置,您就可以开始使用它来绘制图形了。

TeeChart 提供了多种图表类型,包括折线图、柱状图、饼图等。

下面以折线图为例,介绍 TeeChart 的基本用法。

首先,您需要在项目中添加一个 TeeChart 控件,作为图表的容器。

在 Delphi 中,您可以在工具箱中找到 TeeChart 控件,并将其拖放到您的窗体上。

接下来,您需要编写代码来绘制折线图。

例如,以下代码将绘制一个简单的折线图:```procedure TForm1.FormCreate(Sender: TObject);beginChart1.Series[0].Clear; // 清空图表数据Chart1.Series[0].AddXY(1, 10); // 添加数据点Chart1.Series[0].AddXY(2, 20);Chart1.Series[0].AddXY(3, 15);Chart1.Series[0].AddXY(4, 25);end;```在上述代码中,我们首先清空了图表的数据,并使用 `AddXY` 方法添加了四个数据点。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文主要讲解Delphi中Chart,TeeChart的属性,方法及用法.Tchart分析报告,TeeChart使用指南,TeeChart控件介绍1.AllowZoom:Boolean是否允许鼠标拖动来缩放图表2.AnimatedZoom:Boolean拖动是否显示缩放过程3.AxisVisible:Boolean显示和隐藏4个子图表4.BufferedDisplay:BooleanTrue时图表首先画在内部画布上,可以防止图表闪烁,但耗费内存资源.5.ChartHeight:LongInt以像素为单位,运行为只读,显示图表顶轴与底轴的高度,不包含页边距,Height包含页边距,6.DepthAxis,LeftAxis,RightAxis,TopAxis,BottomAxisTchart共分为五个子图表,LeftAxis,RightAxis,TopAxis,BottomAxis和DepthAxis默认情况下只显示LeftAxis和BottomAxis子图表可以通过Series属性的子属性HorizAxis与VertAxis进行设置如:chart1.Series[0].HorizAxis:=aBothHorizAxis;chart1.Series[0].VertAxis:=aBothVertAxis;chart1.BottomAxis.Title.Caption:='nsgtao';chart1.BottomAxis.Title.Font.Color:=clRed;7.Foot:TChartTitle在图表底部定义的文本和格式,在图表底部显示一些说明文字Chart1.Foot.Text.Add('NsgtaoFoot');8.Gradient:TChartGradient用于设置图表背景颜色:是否显示背景色,背景色渐变的起始颜色和终止颜色,渐变方向等1、Tchart分析报告1.1[概述]TChart是delphi里面一个标准的图形显示控件。

它可以静态设计(atdesigntime)也可以动态生成。

1.2[继承关系]TObjectTPersistentTComponentTControlTCustomControlTWedgetControlTChartTCustomPanel1.3[tips]1.3.1ProVersion支持Bezier,Contour,Radar和point3D曲线1.3.2支持jpeg文件的导出1.3.3Chart中的Series可以连接到Table,Query,RemoteDataset(其他数据集)1.3.4TChart里的series的active属性可以实现对已绘制图形的显示或者隐藏1.3.5在TChart中,tchartSeries是所有具体series的父类,没有画出什么来的,用一个具体的series类来创建就可以了,比如用TLineSeries、TPieSeries、TPointSeries、TPointSeries等等都行1.3.6TTeeFunctionComponent可以实现在同一个TChart里面,一个Serries对另一个Serries的统计1.4[问题极其使用技巧]1.4.1TChart中如何实现只有Y轴的放大与缩小功能?设置BottomAxis或者LeftAxis的Automatic:=false并同时设置Minimum,Maximum属性1.4.2如何固定TChart中的坐标,不使TChart中的坐标跟随Series的变化而变化?//设置底座标withmyChart.BottomAxisdobeginAutomatic:=false;Minimum:=0;LabelStyle:=talText;//设置左坐标withmyChart.LeftAxisdobeginAutomatic:=false;Minimum:=0;Title.Angle:=270;Title.Font:=Self.Font;Title.Font.Charset:=ANSI_CHARSET; :='@宋体';Grid.Visible:=False;end;//设置右坐标withmyChart.RightAxisdobeginAutomatic:=false;Title.Font:=Self.Font;Title.Font.Charset:=ANSI_CHARSET; :='@宋体';Title.Caption:='累计百分比(%)'; Maximum:=100;Minimum:=0;1.4.3如何删除一个图形中的一个点?使用Series的delete方法1.4.4如何修改一个点的X或者Y值?LineSeries1.YValue[3]:=27.1;{InBubbleSeries}BubbleSeries1.RadiusValues.Value[8]:=8.1;{InPieSeries}PieSeries1.PieValues.Value[3]:=111;1.4.5如果横坐标是时间(日期),如何进行设置?{First,youneedtosettheDateTimepropertytoTrueinthedesiredXand/orYval ueslist.}LineSeries1.XValues.DateTime:=True;{Second,usethesameabovedescribedmethods,butgivethevaluesasDate,Ti meorDateTimevalues}LineSeries1.AddXY(EncodeDate(1996,1,23),25.4,'Barcelona',clGreen);1.4.6如何在chart中画出的曲线某个点上标记出该点的值?Series.Marks.Visible:=true;Series.Marks.Style:=smsValue;1.4.7如何设置横轴或者纵轴的增长率?Chart.BottomAxis.Increment:=DataTimeStep[dtOneHour];Chart.RightAxis.Increment:=1000;1.4.8如何对图象进行缩放?TChart的ZoomRect或者ZoomPercent方法(Pie图可能不支持缩放)1.5[TChart可以绘制的图形]1.5.1Line(TLineSeries)1.5.2FastLine(TFastLineSeries)相对Line来说,它损耗了某些属性从而来实现快速绘制1.5.3Bar(TBarSeries)1.5.4Horizontalbar(THorizBarSeries)1.5.5Area(TAreaSeries)1.5.6Point(TPointSeries)1.5.7Pie(TPieSeries)1.5.8Arrow(TArrowSeries)1.5.9Bubble(TBubbleSeries)1.5.10Gantt(TGanttSeries)1.5.11Sharp(TChartShape)1.6[TChart的实时绘制]实时绘制对机器性能要求比较高,因此我们在编程的时候要注意下面几个方面:使用2D图形是Chart尽可能包含少的点如果需要,可以移除(remove)chart的legend(?????)和Title使用默认的字体和字体大小使用FastLineSeries使用实体(solid)画笔和画刷格式尽量避免使用圆形和环行bar样式不要使用背景图片和渐变效果样式把Chart的BevelInner和BevelOUter属性设置为bcNone如果需要,把TChart的AxisVisible属性设置为False把BufferedDisplay设置为false可以加速chart的重绘1.7[Scrolling]TChart有4中scroll选择(AllowPanning属性),分别是不允许Scroll(pmNone);水平Scroll(pmHorizontal);垂直Scroll(pmVertical);水平和垂直Scroll(pmBoth)ProcedureScroll(ConstOffset:Double;CheckLimits:Boolean);例子如下:Chart1.BottomAxis.Scroll(1000,True);这段代码也等同于WithChart1.BottomAxisdoBeginAutomatic:=false;SetMinMax(Minimum+1000,Maximum+1000);End;1.8[TChart中的全局变量]üTeeScrollMouseButton:=mbRight;设置鼠标右键为TChart滚动键(默认)üTeeScrollKeyShift:=[ssCtrl];要按住Control键才可以使Scroll滚动1.9[TChartSerries使用技巧]1.9.1运行时候创建一个Serries,三种方法:1.VarMySeries:TBarSeries;MySeries:=TBarSeries.Create(Self);MySeries.ParentChart:=Chart1;2.Chart1.AddSeries(TBarSeries.Create(Self));3.VarMyClass:TChartSeriesClass;MyClass:=TBarSeries;Chart1.AddSeries(MyClass.Create(Self));1.9.2获得TChart中的Serries数组,也有三种方法1.MySeries:=Chart1.SeriesList[0]2.MySeries:=Chart1.Series[0]3.MySeries:=Chart1[0]1.9.3SerriesCount属性获得SeriesList中Series的个数1.9.4隐藏TChart中的Series有三种方法,但是效果不等价1.Series1.Active:=False;仅仅隐藏,当设置为true的时候还可以显示出来2.Series1.ParentChart:=nil;隐藏,重新设置ParentChart为TChart时候可以显示3.Series1.Free;删除了Series.不可以恢复1.9.5TChart中的数据排序WithSeries1dobeginYValues.Order:=loAscending;YValues.Sort;Repaint;end;Ø定位一个点(Loacateapoint)Series1.XValues.Locate(123);ØXValue和YValue都拥有的属性Total,TotalABS,MaxValue,MinValue。

相关文档
最新文档