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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先说下控件功能如下: 1,可以设置固定行 和固定列.固定行和列是任何时候不许编辑的,但是可以代码修改设置 2,可以设置背景色(包括固定好和表格内部背景色,非固定单元格背景只对新建单元格有效) 3,可以合并单元格(横向竖向均可合并,支持横竖同时合并单元格效果) 4,边框线宽度可以设置(外边框线,内边框线可以分开设置) 5,边框颜色可以设置(内外线色可以设置不同颜色) 6,可以设置编辑状态(此属性是新建单元格属性,只对新建单元格生效) 7,只读属性(针对所有非固定单元格) 8,随时可以设置行数和列数(减少的话,末尾待减少储存数据会丢失) 9,增加是否立即刷新参数,可以在大量输入录入时快速执行 下面是单元格单独属性设置介绍 1,可以储存字符串 2,可以储存整数 3,可以储存文本(默认单元格内显示[DEMO],可以编辑实际内容或读取实际内容) 4,可以储存字符串列表(可以设置读取选择字符串) 5,可以储存日期(格式2018-07-06) 6,可以储存时间(格式10:26:32,设置智能设置到时分,直接赋值可以包含更精确单位) 7,可以设置日期(格式包含以上格式,设置同上.直接赋值可以保存更精确单位) 8,可以储存颜色(显示以保存颜色显示) 9,单元格字体,所有字体设置均支持(包含颜色,字体,换行,对齐等属性) 10,背景可以单独设置 10,可以单独设置是否允许编辑 详细使用请看使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值