打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DBGridEh用法总结二(PivotGrid的使用)

一、  以前的程序中实现分组编译都是动态生成SQL语句,到服务器执行,而后显示结果。如今用PivotGridEh,太方便了。可是在测试过程当中费了很多劲,自带的例子很正常。通过代码跟踪,发现是字段的Required应该设置为false便可。
解决办法服务器

要修改单元PivotGridEh中4个过程,分别是:测试

    procedure MakeColsTable;ui

    procedure MakeInverseGaussMatrix;事件

    procedure MakeResultAggrTable;it

    procedure MakeRowsTable;io

在数据集打开以后,设置字段属性Required := false;编译

以下:List

  ColsTable.Open;程序

  for I := 0 to ColsTable.FieldCount - 1 do数据

    ColsTable.Fields[i].Required := False;

其它几个过程参照上面代码修改。

二、  给PivotGridToolBoxEh设置排列样式

在基类TCustomPivotGridToolBoxEh 的Create事件中添加以下代码以建立右键菜单。

  FBuJuPM := TPopupMenu.Create(Self);

  FBuJuOne := TMenuItem.Create(FBuJuPM);

  FBuJuOne.Tag := 0;

  FBuJuOne.Caption := '上下排列';

  FBuJuOne.RadioItem := True;

  FBuJuOne.Checked := True;

  FBuJuOne.OnClick := self.BuJuPMClick;

  FBuJuPM.Items.Add(FBuJuOne);

  FBuJuTwo := TMenuItem.Create(FBuJuPM);

  FBuJuTwo.Tag := 1;

  FBuJuTwo.Caption := '左右排列';

  FBuJuTwo.RadioItem := True;

  FBuJuTwo.OnClick := self.BuJuPMClick;

  FBuJuPM.Items.Add(FBuJuTwo);

  self.PopupMenu :=FBuJuPM;

右键菜单事件代码:

procedure TCustomPivotGridToolBoxEh.BuJuPMClick(Sender:TObject);

var

  tmpMI: TMenuItem;

begin

  tmpMI := TMenuItem(Sender);

  if tmpMI.Tag = 0 then

  begin

    FSplitter.SetBounds(0,10,2,8);

    FPivotDataPanel.Align := alBottom;

    FSplitter.Align := alBottom;

    FFieldListPanel.Align := alClient;

    self.Width := self.Width div 2;

  end

  else

  begin

    FSplitter.SetBounds(0,10,2,10);

    FPivotDataPanel.Align := alRight;//alBottom;

    FSplitter.Align := alRight;//alBottom;

    FFieldListPanel.Align := alClient;

    self.Width := self.Width * 2;

  end;

  tmpMI.Checked :=True;

end;

三、  增长样式属性

property BuJuCols: Integer read FBuJuCols write SetBujuColsdefault 1;

1=默认的一列样式,2=两列显示,这样字段比较多时,能够显示更多的字段以方便操做。

事件代码以下:

procedureTCustomPivotGridToolBoxEh.SetBujuCols(const Value: Integer);

begin

  FBuJuCols := Value;

  if Value = 1 then

    BuJuPMClick(FBuJuOne)

  else

    BuJuPMClick(FBuJuTwo);

end;         
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
勾魂摄魄 云南10大仙境
必先自律
flex
☆博客系列日志上下翻页的设置制作
align-self — 单个元素交叉轴位置
self
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服