"TEXT"对象不仅可以显示静态的文字,还可以显示表达式。表达式可以处于对象中。让我们 通过一个简单的例子来展示如何将表达式置于对象中。那下面的代码放置到对象中:
Hello, World! Today is [DATE].
因此,运行报告时,我们可以得到如下结果:
Hello, World! Today is 01.01.2004.
为何会出现这样的结果呢?在FastReport报表的建立过程中,如何遇到有方括号的表达式,引擎会计算它的值,然后将该值插入到文本中表达式的位置。“文本”对象可以包含任意数量的表达式。单个变量可以包括在方括号中(例如,[1+2*(3+4)])。任何常量,变量,函数和数据库字段都可以用在表达式中。
FastReport可以自动识别文本括在方括号中的表达式。然而要是我们的对象中包含了方括号,并且我们又不希望方括号被认为是表达式,该怎么办呢?
例如,如果我们需要文本显示如下的效果:
a[1] := 10
FastReport中认为[1]作为一个表达式,并显示如下:
a1 := 10
这当然不是我们所想要的效果。避免这种情况的方法之一是禁用表达式。只要禁用上下文菜单中的“AllowExpressions”属性,所有的文本表达式将被忽略。
在我们的例子中,FastReport显示我们所需要的效果:
a[1] := 10
有时候,文本中的方括号中既包含了表达式,有包含了文本,例如:
a[1] := [myVar]
禁用表达式允许我们在所需的地方显示方括号,但同时它也禁用了表达式处理。在这种情况下,FastReport可以让你用另一套符号来指定表达式。“ExpressionDelimiters”属性在默认情况下负责用另一套符号来指定表达式。此时,用户可以使用尖括号来包括表达式:
a[1] := <myVar>
当然,在“ExpressionDelimiters”属性中必须设置 “<,>”值。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:FastReport控件中文网 [https://www.fastreportcn.com/]
本文地址:https://www.fastreportcn.com/post/1086.html