`
soboer
  • 浏览: 1369952 次
文章分类
社区版块
存档分类
最新评论

StringGrid类详解

 
阅读更多
事件句柄
1.StringGrid1GetEditText(Sender: TObject; ACol, ARow: Integer; var Value: string);
Options.goEditing = true才能触发此事件。此事件在单元格进入可编辑状态时触发。参数ACol,ARow为当前单元格的列号和行号(列号和行号都按顺序从0开始编码)。参数Value为当前单元格中的内容。
2.StringGrid1GetEditMask(Sender: TObject; ACol, ARow: Integer; var Value: string);Options.goEditing = true才能触发此事件。此事件在单元格进入可编辑状态时触发。参数ACol,ARow为当前单元格的列号和行号(。参数Value内容未深入了解,不详。
3.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean);
选择单元格时触发。参数ACol,ARow为当前单元格的列号和行号。参数CanSelect默认值True,设置为False时,控制焦点不能移出当前单元格。
4.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
触发此事件的现象有多种情况。单元格内容变更时触发。单元格编辑状态撤销时触发。当单元格内容变更时,参数ACol,ARow为当前单元格的列号和行号,参数Valuet为当前输入的内容。当单元格是从编辑状态撤出时。参数ACol,ARow为撤出前的单元格的列号和行号,参数Valuet为单元格撤出前的内容。
另,焦点直接移出StringGrid1时又不触发。
5.StringGrid1TopLeftChanged(Sender: TObject)
滚动条滚动时,StringGrid1的可视区域发生变化时触发。在StringGrid1.LeftCol或者StringGrid1.TopRow属性值变化时触发。StringGrid1的可视区域发生变化,这2个属性值会自动改变。
6.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
单元格重画时触发,很多操作都会触发此事件,此事件触发频率很高,不适宜在此句柄做复杂处理。编辑单元格内容时不会触发。
7.方法&属性
总列数:StringGrid1.ColCount;
总行数:StringGrid1.RowCount;
固定列数:StringGrid1.FixedCols;
固定行数:StringGrid1.FixedRows;
当期活动单元格列号:StringGrid1.Col;
当期活动单元格行号:StringGrid1.Row;
访问ACol列ARow行单元格内容:StringGrid1.Cells[ACol, ARow];
可见区域左边可视的第一列序号:StringGrid1.LeftCol;排除固定列。
可见区域上边可视的第一行序号:StringGrid1.TopRow;排除固定列。
Options.goEditing属性控制列是否可以编辑。 //OnSelectCell句柄中动态设置可编辑列的方法。
if ACol in [StringGrid1.FixedCols..StringGrid1.ColCount-1] then
StringGrid1.Options := StringGrid1.Options + [goEditing]
else
StringGrid1.Options := StringGrid1.Options - [goEditing];
StringGrid1.Objects[ACol, ARow] 可用于存储各种对象,方便处理时使用。
当前活动单元格的LEFT值:StringGrid1.CellRect(StringGrid1.Col,StringGrid1.Row).Left;
当前活动单元格的Top值:StringGrid1.CellRect(StringGrid1.Col,StringGrid1.Row).Top;
当前活动单元格的列宽度值:StringGrid1.ColWidths[StringGrid1.Col];
当前活动单元格的行高度值:StringGrid1.RowHeights[StringGrid1.Row];

分享到:
评论

相关推荐

    StringGrid DBGrid全书

    `SetOptimalGridCellWidth` 过程详解 #### 1.1 概述 `SetOptimalGridCellWidth` 是一个实用过程,用于调整 Delphi 中 `TStringGrid` 控件的列宽,确保每一列都能完整显示其内容而不会出现截断现象。此过程适用于...

    Delphi StringGrid组件

    ### Delphi StringGrid组件知识点详解 #### 一、概述 StringGrid组件是Delphi中一个非常重要的组件,常被用于创建具有行和列的数据展示表格。它提供了丰富的属性和方法来帮助开发者灵活地管理和操作表格数据。本文...

    TMS Stringgrid 5.6 DEMOS

    3. **特性详解** - **自定义单元格**:TMS Stringgrid允许开发者为每个单元格定义不同的样式和行为。 - **数据绑定**:组件支持与多种数据源绑定,包括数据库、数组、集合等。 - **编辑功能**:提供多种内置编辑...

    Delphi动态生成控件

    #### 代码详解 1. **变量声明**: - `myedit`:定义了一个包含10个`TEdit`类型的数组,用于存储动态生成的文本框。 - `i`, `j`:整型变量,用于循环控制。 2. **循环创建控件**: - `for i := 1 to 3 do`:通过...

    Delphi 控件 TMS Component Pack v8.3.4.0 XE10.2

    《Delphi控件TMS Component Pack v8.3.4.0 XE10.2详解》 在软件开发领域,Delphi作为一种高效且强大的Windows应用程序开发工具,因其丰富的库和组件而备受开发者喜爱。TMS Component Pack是针对Delphi平台的知名...

    TMS Component Pack v2.7 (控件包)

    【TMS Component Pack v2.7 控件包详解】 TMS Component Pack v2.7 是一个专门为DELPHI开发者设计的全面控件集合,它包含了众多高质量和功能丰富的组件,旨在提升开发效率并提供独特的用户体验。这个控件包在业界...

    DataSnap框架开发指导.docx

    - **ListView或StringGrid**:通过右键快捷菜单直接将数据表字段拖拽到视图中实现绑定。 #### 八、uAppSrv单元详解 - **连接设置**:首先通过`LinkAppSrv`方法设置服务器IP地址、端口以及空闲超时时间。 - **测试...

    VclSkin皮肤查看器,SkinBuilder编辑器7.0

    在VclSkin皮肤查看器中,你可以实时查看不同皮肤在各种控件上的效果,如按钮(button)、页面控制(pagecontrol)和字符串网格(stringgrid)。这使得开发者能够直观地看到皮肤应用到实际应用中的效果,方便调整和...

    TMS VCL UI Pack 10.3.1.0 delphi xe10.2.3亲测可用.zip

    《TMS VCL UI Pack 10.3.1.0在Delphi XE10.2.3中的应用及控件详解》 TMS VCL UI Pack是一款强大的UI组件库,专为Delphi开发者设计,它提供了丰富的界面元素和控件,极大地丰富了Delphi开发者的工具箱。在10.3.1.0...

    Delphi7编程100例

    详解Canvas生成渐变色窗口背景 WINAPM风格磁化窗口 软件封面的图片显示制作 实现图片的任意角度旋转 奇妙的拼图游戏 使用PaintBox控件制作画图程序 使用DrawGrid控件制作五子棋 多彩的数据报表 按...

    Delphi编程100例

    详解Canvas生成渐变色窗口背景 WINAPM风格磁化窗口 软件封面的图片显示制作 实现图片的任意角度旋转 奇妙的拼图游戏 使用PaintBox控件制作画图程序 使用DrawGrid控件制作五子棋 多彩的数据报表 按压缩比将BMP转换为...

    《Delphi7编程100例》代码

    ToolBar工具栏控件的使用动态建立主菜单选项窗口界面的动态分隔条动态...详解Canvas生成渐变色窗口背景WINAPM风格磁化窗口软件封面的图片显示制作实现图片的任意角度旋转奇妙的拼图游戏使用PaintBox控件制作画图程序...

    DBExpress+dbxopenmysql50.dll说明

    ### DBExpress + dbxopenmysql50.dll 使用详解 #### 一、简介 DBExpress是Borland Delphi和C++Builder中的一项关键技术,用于高效地访问数据库。它通过使用本地驱动程序直接与数据库服务器通信,从而提高了应用...

    Delphi7 编程 100 实例

    ToolBar工具栏控件的使用 动态建立主菜单选项 窗口界面的动态分隔条...详解Canvas生成渐变色窗口背景 WINAPM风格磁化窗口 软件封面的图片显示制作 实现图片的任意角度旋转 奇妙的拼图游戏 使用...

    delphi7编程百例

    ToolBar工具栏控件的使用 动态建立主菜单选项 窗口界面的动态...详解Canvas生成渐变色窗口背景 WINAPM风格磁化窗口 软件封面的图片显示制作 实现图片的任意角度旋转 奇妙的拼图游戏 ...

Global site tag (gtag.js) - Google Analytics