我正在使用Delphi 7和Rave Reports。
我如何根据之前出现的另一个DataText的大小来设置DataText.Left属性(来自Rave Reports)。
我尝试使用前一个DataText的宽度,第一个DataText显示的字段的Length ...它们都不起作用。
如果有人可以给我任何想法,我将不胜感激。

谢谢

最佳答案

长度不考虑字符的宽度,这取决于字体设置。

// Assumes the AutoSize property is true.
// Note: 8 is added as spacing
DataText.Left := LastDataText.Left + LastDataText.Width + 8;


如果从DataSet加载数据,请查看TField类的DisplayWidth属性。

// calculate the width of the last field.
TextWidth := DataSet.Fields[0].DisplayWidth * QuickReport.Canvas.TextWidth('M');
DataText.Left := LastDataText.Left + TextWidth;

10-08 05:06