zoukankan      html  css  js  c++  java
  • advstringgrid笔记

    一下操作是在advstringgrid7.4.6.3版本下有效,advstringgrid控件名设置为 zy

    一、属性设置

    1.修改单元格内的值:zy.cells[col,row]='value';

    2.设置字体:属性找到Font设置普通单元格内字体,Fixfont设置列行标题字体;

    3.设置某单元格背景颜色,zy.Colors[acol,arow] := RGB(255,116,56);

    4.设置某行字体zy.RowFontColor[i] := clred;

    5.多行设置,属性Options内,gorowsizing=true,属性WordWarp=true,初始化zy后添加

      zy.DefaultColWidth := 200;//某人列宽
      zy.AutoSizeColumns(false,5);
      zy.AutoSizeRows(false,5);

    6.点击单元格后直接变成编辑状态:属性MouseActions内DirectEdit=true、CaretPositioning=True;

    7.修改行高列高:Options-> goRowsizing=true、goColsizing=true;

    8.设置成可编辑状态:Options->goEditing=true;

    9.设置回车后向后、下移动单元格:属性Navigation下,AdvanceOnEnter:=true;

    10.滚动条滚动到某格:ZY.ScrollInView(col,row,spMiddle);//(spMiddle 剧中, spTrailing 尾随不知道啥意思, spLeading 居首);

    11.修改Options属性:zy.Options :=  zy.Options+ [goEditing];

    12.CheckBox:ZY.AddCheckBoxColumn(3,false,false);//添加列   Zy.SetCheckBoxState(3,i,true);//设置为选中

        c.GetCheckBoxState(3,i,cs);//获取选中状态 先定义:cs : TCheckBoxState;
            if cs = cbChecked  then

    13.排序:很简单,属性 SortSetting->show=true;在cansort事件内设置列是否可以排序

    二、事件说明

    1、Onselectcell:选择单元格,可以设置某行、某列、某格是否可选

    if acol in[0,1] then
        canselect := false;

    2.OnEditCellDone:单元格编辑结束后触发。

    3.OnEndColumnSizeOnEndRowSize:改变列行宽度高度后触发,对应要进行zy.AutoSizeRows(false,5);zy.AutoSizeCols(false,5);

    4.OnGetColumnFilter:过滤设置,首先将属性FilterDropDownAuto设置为True;

      窗体初始化里面加入 zy.AutoFilterUpdate := true;

      然后在给zy填充数据的地方设置zy.filter.clear;

      然后在此事件内如下代码

      if not (Column in[pcdmi,kldmi]) then
          Filter.Clear;//设置哪下列有过滤

    也可以添加新过滤

      Filter.add('');

    4.OnMouseMove:鼠标移动,配合zy.MouseToCell(x,y,cc,cr);注意cc,和cr是可写变量,cc,cr为x,y坐标得到的单元格行列。

    5.OnGetEditType

      procedure TFModify.xyspcjGetEditorType(Sender: TObject; ACol, ARow: Integer;

      var AEditor: TEditorType);
      begin
        if (ARow = 2) and (ACol in [7,8,9,10,11,12,13,14,15,16,17]) then
       begin
          AEditor := edComboList;
          xyspcj.ClearComboString;
          xyspcj.AddComboString('A');
          xyspcj.AddComboString('B');
          xyspcj.AddComboString('C');
          xyspcj.AddComboString('D');
          xyspcj.AddComboString('E');
          xyspcj.AddComboString('');
        end;
      end;

  • 相关阅读:
    【转】 grep 文件报错 “Binary file ... matches”
    JS 将值插入数组中
    Vue 刷新当前页面,并重新加载页面数据
    Vue 获得所选中目标的状态(checked)以及对应目标的数据,并进行相应的操作
    JS --- 如何获取一个对象的类型
    vue-cli项目开发/生产环境代理实现跨域请求+webpack配置开发/生产环境的接口地址
    VUE 处理文本框获焦点高亮
    VUE项目问题之:去掉url中的#/
    关于移动端终极适配解决方案
    VUE.JS 使用axios数据请求时数据绑定时 报错 TypeError: Cannot set property 'xxxx' of undefined 的解决办法
  • 原文地址:https://www.cnblogs.com/theonewu/p/5053056.html
Copyright © 2011-2022 走看看