RichView Table 表格对齐

RichView Table 表格对齐,关键是二步,一是行、列尺寸和Cell中文本的对齐。
一、列的宽度
- table.Cells[0, 0].BestWidth := -10; // 表 单元最佳宽
- table.Cells[0, 1].BestWidth := -45; // 表 单元最佳宽度 45% 注意负数 100%
- table.Cells[0, 2].BestWidth := -25; // 正数是 像素值
- table.Cells[0, 3].BestWidth := -12;
- table.Cells[0, 4].BestWidth := -8;
上述代码,以文档宽度的百分比,是比较合适的方法。
二、行的高度
RichView行的高度,除了代码设置外,主要综合整个行每个Cell的高度,为了显示全部内容,往往以Cell中高度的最大值为准。
为了认,每行高度一致,就得将每个Cell的高度基本一致(小于某个值)。
三、Cell的文档
记住,Cell中的文档,就是一个TRichView。
向Cell中加入文档方法:
procedure AddNL(const s: String; StyleNo: Integer; ParaNo: Integer = -1;
const Tag: TRVTag=RVEMPTYAG);
插入行的相关文字和段落的属性,由StyleNo,ParaNo指定。
当Cell中仅是一行文本,只要设置相同的StyleNo,ParaNo即可。(前图)
下图中,当Cell中文本是多行时,有的Cell一行文本,有的是二行文本,指定相同的StyleNo,ParaNo,就是造成Cell,文本没有居中对齐。

改进的办法:在Cell[0,1]中,AddNL指定的 新的ParaNo,在SpaceBefore属性中,加入半个字符的高度。
效果如下:

注意:RichView表的行高,以行Cell的最大值为准,其它小于最大值的Cell,以末尾添加空白,类似顶对齐的方式:

出现这种情况,好的办法,是通过添加空白行,或添加行前距(SpaceBefore)解决。

就这一点,RichView及EXCEL的Cell设置方便,只要设置Cell居中对齐,即可。