zoukankan      html  css  js  c++  java
  • ehlib 用法记录

    点列头排序

    1.add  ehlibado.pas  to project.

    2.grideh>ColumnDefValues>Title>TitleButton=true;

    3.grideh>SortLocal=true;

    4.grideh>optionsEh>dghAutoSortMarking=true;

    install component

    open ehlib.dpk,replace ,then install ok!

    in '    replace to  in '..Common

    grideh隔行变色:EvenRowColor/OddRowColor

    grid的title:渐变色,TitleParams.FillStyle=cfstGradientEh

    动态创建Grid列

      var
        column : TColumnEh;
      begin
        self.DBGridEh1.Columns.AddAllColumns( true );
        column := self.DBGridEh1.Columns.Add;
        column.Title.Caption := '姓名';
        column.Width := 70;
        column.FieldName := 'name';
         TColumnEh * column;
        column = DBGridEh1->Columns->Add( );
        column->FieldName = "name";
        column->Title->Caption = "姓名";
        column->Width = 70;

    这个父容器释放的时候会自动释放,所以不存在内存泄漏。

    尾行合计

    方法:双击grideh打开字段列表;选择需要求和的字段,有个属性Footer

     https://blog.csdn.net/yanjinrong/article/details/43816369

    GridEH编辑框当前单元格的值,正在编辑的值,正在输入的值,当前输入的值

       self.DBGridEh1.InplaceEditor.Text

    if Grid.InplaceEditorVisible then
        Result := Grid.InplaceEditor.Text


        Result := Grid.InplaceEditor.top

    让进入编辑模式

      DBGridEh1.EditorMode:=True;

    InplaceEditor本质上是MaskEdit

    TInplaceEdit = class(TCustomMaskEdit)

     procedure TCustomDBGridEh.ShowEditor;

    procedure TCustomDBGridEh.UpdateEdit; //计算位置

    function TCustomDBGridEh.CellEditRect(ACol, ARow: Longint): TRect;

    DBGridEh.pas

    function TCustomDBGridEh.CellEditRect(ACol, ARow: Longint): TRect;

    // abscrect.top :=abscrect.top+ 20;
        Result.top:= abscrect.top;

    grideh编辑框垂直居中

    procedure TForm12.DBGridEh1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
    var
    acol,arow:Integer;
    arect:TRect;
    begin
    if self.DBGridEh1.TitleHeight<5 then Caption:='0';
    
    if (self.DBGridEh1.InplaceEditor<>nil) and(self.DBGridEh1.InplaceEditor.Visible) then //and (self.DBGridEh1.InplaceEditor.Top<=(25+ (self.FDMemTable1.RecNo-1)*(self.DBGridEh1.RowHeight+1)  ) then
    begin
    
       arect:= self.DBGridEh2.CellRectAbs(DataCol,DBGridEh1.Row,true);
       self.Caption := Format('%d,%d,%d,%d',[DBGridEh1.Row,  arect.Top,DBGridEh1.InplaceEditor.Top,DBGridEh1.InplaceEditor.Height]);
       DBGridEh1.InplaceEditor.Alignment := taCenter;
       if(  DBGridEh1.InplaceEditor.Top <= 25+ 41*(DBGridEh1.Row-1) )  then
        self.DBGridEh1.InplaceEditor.Top := self.DBGridEh1.InplaceEditor.Top+10 ;
    end;
    
    // self.Caption:='cc';
    end;
  • 相关阅读:
    .net core读取appsettings.config中文乱码问题
    vs2017错误:当前页面的脚本发生错误
    VS Code中无法识别npm命令
    Visual Studio报错/plugin.vs.js,行:1074,错误:缺少标识符、字符串或数字
    记录一次在生成数据库服务器上出现The timeout period elapsed prior to completion of the operation or the server is not responding.和Exception has been thrown by the target of an invocation的解决办法
    Java集合框架
    java hash表
    Java Dictionary 类存储键值
    java数据结构 栈stack
    java封装
  • 原文地址:https://www.cnblogs.com/cb168/p/5241917.html
Copyright © 2011-2022 走看看