📄 实例——应用decision cube组件页.txt
字号:
unit UDecision;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, TeEngine, Series, MXDB, DB, DBTables, MXTABLES, Mxstore,
ExtCtrls, TeeProcs, Chart, MXGRAPH, Grids, MXGRID, StdCtrls, ComCtrls,
MXPIVSRC;
type
TFDecision = class(TForm)
DecisionGrid1: TDecisionGrid;
DecisionGraph1: TDecisionGraph;
DecisionCube1: TDecisionCube;
DecisionSource1: TDecisionSource;
Series10: TBarSeries;
Series11: TBarSeries;
StatusBar1: TStatusBar;
Series2: TBarSeries;
DecisionPivot1: TDecisionPivot;
Series3: TBarSeries;
Series4: TBarSeries;
Series5: TBarSeries;
Series6: TBarSeries;
Series7: TBarSeries;
Series8: TBarSeries;
DecisionQuery1: TDecisionQuery;
procedure FormCreate(Sender: TObject);
procedure DecisionGrid1DecisionDrawCell(Sender: TObject; Col,
Row: Integer; var Value: String; var aFont: TFont;
var aColor: TColor; AState: TGridDrawState;
aDrawState: TDecisionDrawState);
procedure DecisionGrid1DecisionExamineCell(Sender: TObject; iCol, iRow,
iSum: Integer; const ValueArray: TValueArray);
procedure DecisionGrid1TopLeftChanged(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FDecision: TFDecision;
implementation
{$R *.dfm}
procedure TFDecision.FormCreate(Sender: TObject);
begin
//打开决策查询组件
DecisionQuery1.Open();
//设置决策网格的属性
DecisionGrid1.CaptionColor :=RGB(0,255,0); //设置维标题的颜色 -green
DecisionGrid1.LabelColor :=RGB(255,0,0); //设置字段名称的颜色--red
DecisionGrid1.DataColor :=RGB(255,255,0);//数组数据单元的颜色--yellow
DecisionGrid1.DataSumColor :=RGB(255,0,255); //设置小计单元的颜色-pink
DecisionGrid1.Dimensions[2].color :=RGB(0,0,125);//设置第二维的颜色--blue
//设置决策图的背景色为白色
DecisionGraph1.Color :=RGB(255,255,255);
DecisionGraph1.Title.Text.Strings[0] :='动物资料';
end;
procedure TFDecision.DecisionGrid1DecisionDrawCell(Sender: TObject; Col,
Row: Integer; var Value: String; var aFont: TFont; var aColor: TColor;
AState: TGridDrawState; aDrawState: TDecisionDrawState);
begin
//将决策网格数据区中的第3行的4列的单元的颜色设置为紫色
if (Row=2) and (Col=3) then
aColor := RGB(128,0,128);
end;
procedure TFDecision.DecisionGrid1DecisionExamineCell(Sender: TObject; iCol,
iRow, iSum: Integer; const ValueArray: TValueArray);
var
str:String;
begin
//利用状态条显示用户右击鼠标所选择的单元中的数据
if DecisionGrid1.Cells[iCol,iRow]<>'' then
begin
str := '鼠标右击所选择的第'+inttostr(iRow+1)+'行';
str :=str +'第'+inttostr(iCol+1);
str :=str +'列的数据单元的数据为:'+ DecisionGrid1.Cells[iCol,iRow];
StatusBar1.SimpleText := str;
end
else
StatusBar1.SimpleText :='';
end;
procedure TFDecision.DecisionGrid1TopLeftChanged(Sender: TObject);
Var
rect:TRect ;
str:String;
begin
rect := DecisionGrid1.CellRect(3,2);
if rect.Left =0 then
begin
StatusBar1.SimpleText :='决策网格第三行第四列的数据单元未显示!';
exit;
end;
str :='决策网格第三行第四列的数据单元的坐标为:(' ;
str :=str + inttostr(rect.Left)+',';
str :=str + inttostr(rect.top)+',';
str :=str + inttostr(rect.Right)+',';
str :=str + inttostr(rect.Bottom)+')';
StatusBar1.SimpleText :=str;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -