Print 方法使用当前的颜色和字体打印 Report 对象中的文本。
expression 必需。返回“应用于”列表中的一个对象的表达式。
Expr 必需 String 型。待打印的字符串表达式。如果忽略该参数,Print 方法将打印一个空行。多个表达式可以用空格、半角分号 (;) 或半角逗号隔开。空格的作用和分号相同。
只能在由节的 OnPrint 事件属性设置所指定的事件过程或宏中使用该属性。
由 Expr 参数指定的表达式在对象上的打印位置从 CurrentX 和 CurrentY 属性设置所指定的位置开始。
当打印完 Expr 参数时,通常追加一个回车符,以便下一个 Print 方法从下一行开始。当出现回车时,CurrentY 属性设置按 Expr 参数(与 TextHeight 方法返回的值相同)的高度增加,并且将 CurrentX 属性设为 0。
如果 Expr 参数后跟有分号,将不会追加回车符,并且下一个 Print 方法将在当前 Print 方法打印的同一行上进行打印。CurrentX 和 CurrentY 属性设为紧接最后一个打印字符之后的点。如果 Expr 参数本身包含回车符,每一个这样的内嵌回车符都将如 Print 方法所说明的设置 CurrentX 和 CurrentY 属性,而不带分号。
如果 Expr 参数后跟有逗号,CurrentX 和 CurrentY 属性将设置为相同行的下一个打印区。
当 Expr 参数在 Report 对象上打印时,不适合指定位置的行将不会滚动。文本将被剪裁以便适合对象。
因为 Print 方法通常打印的是比例间距的字符,所以必须记住打印的字符数和这些字符所占的固定宽度列数没有关系。例如,宽的字母(例如 W)比固定宽度列要宽,而窄的字母(例如 I)则比固定宽度列要窄。必须确保表的列之间应足够宽,以便容纳想打印的文本。另外,也可以用固定宽度的字体(例如 Courier)来打印,以确保每个字符只用一列。
下面的示例使用 Print 方法来显示名为“报表1”的报表上的文本。它使用 TextWidth 和 TextHeight 方法,使文本在垂直和水平方向上居中。
Private Sub Detail_Format(Cancel As Integer, _
FormatCount As Integer)
Dim rpt as Report
Dim strMessage As String
Dim intHorSize As Integer, intVerSize As Integer
Set rpt = Me
strMessage = "DisplayMessage"
With rpt
'Set scale to pixels, and set FontName and
'FontSize properties.
.ScaleMode = 3
.FontName = "Courier"
.FontSize = 24
End With
' Horizontal width.
intHorSize = Rpt.TextWidth(strMessage)
' Vertical height.
intVerSize = Rpt.TextHeight(strMessage)
' Calculate location of text to be displayed.
Rpt.CurrentX = (Rpt.ScaleWidth/2) - (intHorSize/2)
Rpt.CurrentY = (Rpt.ScaleHeight/2) - (intVerSize/2)
' Print text on Report object.
Rpt.Print strMessage
End Sub