• delphi使用RichView控件 表格边框


    TRichView表格边框

    介绍

    tblbrdr

    说明

    边框( BorderWidthCellBorderWidth)宽度设置为 0(默认值)可以隐藏。

    单元格属性VisibleBorders可以隐藏某些单元格边框的某些边。

    当在 TRichViewEdit 中插入带有不可见边框的表格时,边框显示为灰色虚线。

    属性

    表格边框宽度TRVTableItemInfo.BorderWidth

    property BorderWidth: TRVStyleLength;
    

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    设置为 0 时隐藏边框。

    默认值 0

    单元格边框宽度TRVTableItemInfo.CellBorderWidth

    property CellBorderWidth: TRVStyleLength;
    

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    设置为 0 时隐藏边框。

    如果属性的值 <> BorderWidth,或者属性的值 <> 1 像素,则只能使用 CSS 将其保存为 HTML。

    默认值 0

    TRVTableBorderStyle

    Unit RVTable;

    type
      TRVTableBorderStyle =
        (rvtbRaised, rvtbLowered, rvtbColor, 
         rvtbRaisedColor, rvtbLoweredColor);
    

    定义表格中的边框样式。 这是表格的 BorderStyleCellBorderStyle 属性。

    • rvtbRaised 凸起的 3d 边框,默认颜色。

    • rvtbLowered 凹陷的 3d 边框,默认颜色。

    • rvtbColor BorderColor/CellBorderColor 颜色的平面边框。

    • rvtbRaisedColor 凸起的 3d 边框。

      左侧和顶部:BorderLightColor/CellBorderLightColor

      底部和右侧:BorderColor/CellBorderColor

    • rvtbLoweredColor 凹陷的 3d 边框。

      左侧和顶部:BorderColor/CellBorderColor

      底部和右侧:BorderLightColor/CellBorderLightColor

    表格边框样式TRVTableItemInfo.BorderStyle

    property BorderStyle: TRVTableBorderStyle;
    

    该属性定义了表格周围的边框样式。

    如果要隐藏表格边框,设置 BorderWidth = 0。

    默认值 rvtbRaised

    单元格边框样式TRVTableItemInfo.CellBorderStyle

    property BorderStyle: TRVTableBorderStyle;
    

    该属性定义了单元格周围的边框样式。

    如果要隐藏单元格边框,设置 CellBorderWidth = 0。

    默认值 rvtbLowered

    单元格的可见边框TRVTableCellData.VisibleBorders

    property VisibleBorders: TRVBooleanRect;

    用户无法撤消/重做对此属性的直接分配,请使用table.SetTableVisibleBorders

    默认值 True, True, True, True (所有边框都可见)

    表格边框水平间距TRVTableItemInfo.BorderHSpacing

    property BorderHSpacing: TRVStyleLength;
    

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    BorderHSpacing 保存在 HTML+CSS 中:

    • BorderHSpacing=CellHSpacing

    • BorderHSpacing>=CellHSpacing and CellHSpacing>=0

    默认值 2 (RVStyle.Units=rvstuPixels)

    表格边框垂直间距TRVTableItemInfo.BorderVSpacing

    property BorderVSpacing: TRVStyleLength;
    

    表格边框和最外面的单元格之间的垂直间距。

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    BorderHSpacing 保存在 HTML+CSS 中:

    • BorderVSpacing=CellVSpacing

    • BorderVSpacing>=CellVSpacing and CellVSpacing>=0

    默认值 2 (RVStyle.Units=rvstuPixels)

    单元格水平间距TRVTableItemInfo.CellHSpacing

    property CellHSpacing: TRVStyleLength;
    

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    该值可以为负数。 例如,指定 CellHSpacing=-CellBorderWidth 以水平折叠单元格边框。

    默认值 2 (RVStyle.Units=rvstuPixels)

    单元格垂直间距TRVTableItemInfo.CellVSpacing

    property CellVSpacing: TRVStyleLength;
    

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    该值可以为负数。 例如,指定 CellVSpacing=-CellBorderWidth 以垂直折叠单元格边框。

    默认值 2 (RVStyle.Units=rvstuPixels)

    单元格内边距TRVTableItemInfo.CellPadding

    property CellPadding: TRVStyleLength;
    

    单元格内容与单元格边框之间的距离。

    保留此属性是为了向后兼容(在version 10 中引入)。分配给此属性会将值分配给 CellHPaddingCellVPadding。 读取此属性将返回 Round((CellHPadding+CellVPadding)/2)

    单元格水平内边距TRVTableItemInfo.CellHPadding

    property CellHPadding: TRVStyleLength;
    

    单元格内容到单元格边框的水平距离。

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    此值影响表中的所有单元格。

    如果单元旋转,CellHPaddingCellVPadding 不会切换。

    默认值 1 (RVStyle.Units=rvstuPixels)

    单元格垂直内边距TRVTableItemInfo.CellVPadding

    property CellVPadding: TRVStyleLength;
    

    单元格内容到单元格边框的垂直距离。

    该值以屏幕像素(pixels)或缇(twips)为单位测量(打印时,根据打印机分辨率重新计算),具体取决于链接的 TRVStyle 组件的单位TRVStyle.Units

    此值影响表中的所有单元格。

    如果单元旋转,CellHPaddingCellVPadding 不会切换。

    默认值 1 (RVStyle.Units=rvstuPixels)

    方法

    设置单元格显示边框TRVTableItemInfo.SetCellVisibleBorders

    procedure SetCellVisibleBorders(Left, Top, Right, Bottom: Boolean;
      Row,Col: Integer);
    

    将值分配给 Cells[Row, Col].VisibleBorders,作为编辑操作。(在version 1.6 中引入)

    与直接分配给 Cells[Row, Col].VisibleBorders 属性不同,在 TRichViewEdit 中插入的表(插入后)调用此方法,则可以撤消/重做此方法。

    例子

    设置1倍宽度的边框

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Table: TRVTableItemInfo;
      Row, Col: Integer;
    begin
      //创建5行5列的表格
      Table := TRVTableItemInfo.CreateEx(5, 5, RichViewEdit1.RVData);
      Table.BestWidth := 400;
      //设置表格和单元格边框样式为平面
      Table.BorderStyle := rvtbColor;
      Table.CellBorderStyle := rvtbColor;
      //设置边框大小和间距大小
      Table.BorderWidth := 1;
      Table.BorderVSpacing := 2;
      Table.BorderHSpacing := 2;
      //设置单元格边框大小
      Table.CellBorderWidth := 1;
      //设置CellHSpacing = 0和CellVSpacing = 0,相邻单元格边框会被视觉组合成2倍宽度边框。
      //Table.CellHSpacing := 0;
      //Table.CellVSpacing := 0;
      //可以通过设置CellHSpacing和CellVSpacing的值为CellBorderWidth的负值,实现单元格边框为1倍宽度(推荐)
      //Table.CellHSpacing := - Table.CellBorderWidth;
      //Table.CellVSpacing := - Table.CellBorderWidth;
      {
      //可以通过设置单元格边框的可见来实现单元格边框为1倍宽度
      //(奇数行上下边框可见奇数列左右边框可见 = 索引从0开始,偶数行索引上下边框可见偶数列索引左右边框可见)
      Table.CellHSpacing := 0;
      Table.CellVSpacing := 0;
      for Row := 0 to Table.RowCount - 1 do
        for Col := 0 to Table.ColCount - 1 do
          Table.SetCellVisibleBorders(not Odd(Col), not Odd(Row), not Odd(Col), not Odd(Row), Row, Col);
      }
      //将表格添加到文档中
      RichViewEdit1.InsertItem('', Table);
    end;
    
  • 相关阅读:
    首位相连数组求最大子数组的和
    第四周学习进度报告
    求二维数组中子数组的最大值
    第三周学习进度总结
    数组从文件读取判断子数组的最大值
    CI项目设计Redis队列
    list
    zset
    NodeJS框架一览
    nginx虚拟主机配置
  • 原文地址:https://www.cnblogs.com/txgh/p/15254250.html
Copyright © 2020-2023  润新知