zoukankan      html  css  js  c++  java
  • firemonkey Grid自定义

    http://stackoverflow.com/questions/28893564/memory-leak-on-tstringgrids-ondrawcolumncell-event

    http://stackoverflow.com/questions/26824307/how-to-display-a-multiline-text-in-a-stringgrid-cell-delphi-xe6-android

    http://stackoverflow.com/questions/25410901/firemonkey-xe5-livebinding-tgrid-cell-text-aligment

    http://cc.embarcadero.com/Item/28894

    ColumnHeader

    procedure TFrm.GridLDrawColumnHeader(Sender: TObject;
      const Canvas: TCanvas; const Column: TColumn; const Bounds: TRectF);
    begin
      Canvas.Fill.Color := TAlphaColorRec.Lightskyblue;
      Canvas.FillRect(Bounds, 0, 0, [], 1);
      Canvas.Fill.Color := TAlphaColorRec.White;
      // Canvas.te//设置字体
      Canvas.FillText(Bounds, Column.Header, False, 1, [], TTextAlign.Center, TTextAlign.Center);
    end;

     DrawColumnCell

     取Grid任意行任意列的值或者是可见区域的单元格值,未验证。

        Grid1.Model.GetValue(col,row);

    LeftColumn
    RigthColumn

    TopRow
    BottomRow

    Specifies the index of the first visible scrollable row in the grid.

    Read TopRow to determine the index of the first row in the scrollable region that is visible. Set TopRow to scroll the rows in the grid so that the row with the TopRow index is the first row after the fixed rows.

      head:THeader;
      LContent:TControl;

    head:=Grid1.FindStyleResource('header') as THeader;

    Grid1.FindStyleResource<THeader>(StrHeader, FHeader)

    Grid1.FindStyleResource<TControl>('header', LContent)

    获取grid操作系统默认选择行颜色值focus是选择单元格的值,selection是选中行的值。

    self.Rectangle1.Fill.Color:= ((self.Grid1.FindStyleResource('focus') as TControl) as TRectangle) .Fill.Color;
    self.Rectangle1.Fill.Color:= ((self.Grid1.FindStyleResource('selection') as TControl) as TRectangle) .Fill.Color;

    一次转换就可以。 

    self.Rectangle1.Fill.Color := (self.Grid1.FindStyleResource('focus') as TRectangle).Fill.Color;
     self.Rectangle1.Fill.Color := (self.Grid1.FindStyleResource('selection') as TRectangle).Fill.Color;

    FMX.Grid.Style文件里定义了这2种初始化的地方,如下:

    FindStyleResource<TControl>(StrFocus, FFocus)
    FindStyleResource<TControl>(StrSelection, FSelection)
     
    画当前行和当前单元格,TOpenControl(FSelectionClone).PaintInternal;TControl.PaintInternal;  最终调用了FMX.Objects里的TShape.Painting
  • 相关阅读:
    汉字转拼音的一个类(C#)
    对象当前正在其他地方使用 异常
    关于IE无法打开站点XX已终止操作问题
    C语言有以下几种取整方法:
    做发型屋碰到的
    glTexImage2D()函数的使用注意点
    python爬取百度图片——翻页式网站爬取
    js 中文传值乱码记录
    Wp7 日志 工具
    基于 Android NDK 的学习之旅 Java 方法映射到C中的签名(附源码)
  • 原文地址:https://www.cnblogs.com/cb168/p/5328201.html
Copyright © 2011-2022 走看看