Print 方法

此頁(yè)沒(méi)有內(nèi)容條目
內(nèi)容

expandtri全部顯示

Print 方法使用當(dāng)前的顏色和字體打印 Report 對(duì)象中的文本。

expression.Print(Expr)

expression    必需。返回“應(yīng)用于”列表中的一個(gè)對(duì)象的表達(dá)式。

Expr     必需 String 型。待打印的字符串表達(dá)式。如果忽略該參數(shù),Print 方法將打印一個(gè)空行。多個(gè)表達(dá)式可以用空格、半角分號(hào) (;) 或半角逗號(hào)隔開(kāi)??崭竦淖饔煤头痔?hào)相同。

說(shuō)明

只能在由節(jié)的 OnPrint 事件屬性設(shè)置所指定的事件過(guò)程中使用該屬性。

由 Expr 參數(shù)指定的表達(dá)式在對(duì)象上的打印位置從 CurrentXCurrentY 屬性設(shè)置所指定的位置開(kāi)始。

當(dāng)打印完 Expr 參數(shù)時(shí),通常追加一個(gè)回車符,以便下一個(gè) Print 方法從下一行開(kāi)始。當(dāng)出現(xiàn)回車時(shí),CurrentY 屬性設(shè)置按 Expr 參數(shù)(與 TextHeight 方法返回的值相同)的高度增加,并且將 CurrentX 屬性設(shè)為 0。

如果 Expr 參數(shù)后跟有分號(hào),將不會(huì)追加回車符,并且下一個(gè) Print 方法將在當(dāng)前 Print 方法打印的同一行上進(jìn)行打印。CurrentXCurrentY 屬性設(shè)為緊接最后一個(gè)打印字符之后的點(diǎn)。如果 Expr 參數(shù)本身包含回車符,每一個(gè)這樣的內(nèi)嵌回車符都將如 Print 方法所說(shuō)明的設(shè)置 CurrentXCurrentY 屬性,而不帶分號(hào)。

如果 Expr 參數(shù)后跟有逗號(hào),CurrentXCurrentY 屬性將設(shè)置為相同行的下一個(gè)打印區(qū)。

當(dāng) Expr 參數(shù)在 Report 對(duì)象上打印時(shí),不適合指定位置的行將不會(huì)滾動(dòng)。文本將被剪裁以便適合對(duì)象。

因?yàn)?Print 方法通常打印的是比例間距的字符,所以必須記住打印的字符數(shù)和這些字符所占的固定寬度列數(shù)沒(méi)有關(guān)系。例如,寬的字母(例如 W)比固定寬度列要寬,而窄的字母(例如 I)則比固定寬度列要窄。必須確保表的列之間應(yīng)足夠?qū)?,以便容納想打印的文本。另外,也可以用固定寬度的字體(例如 Courier)來(lái)打印,以確保每個(gè)字符只用一列。

示例

下面的示例使用 Print 方法來(lái)顯示名為“報(bào)表1”的報(bào)表上的文本。它使用 TextWidthTextHeight 方法,使文本在垂直和水平方向上居中。

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