2010-06-20 4 views
0

J'ai travaillé sur un code qui imprime une zone de texte qui répertorie les informations de contact. Lorsque j'essaie de l'imprimer, il n'imprime pas les onglets que j'ai utilisés pour formater le texte. Voici mon code:Imprimer WinForms TextBox avec tabulation

Private Sub PrintPage(ByVal sender As Object, ByVal ev As PrintPageEventArgs) _ 
Handles prndoc.PrintPage 

    Dim fnt As Font = resultTextBox.Font 
    ev.Graphics.TextRenderingHint = Drawing.Text.TextRenderingHint.AntiAlias 

    Dim area As SizeF = New SizeF(ev.MarginBounds.Width, ev.MarginBounds.Height) 
    Dim lines, chars As Integer 
    ev.Graphics.MeasureString(resultTextBox.Text.Substring(mStringPos), fnt, _ 
           area, StringFormat.GenericTypographic, chars, _ 
           lines) 

    Dim rc As New RectangleF(ev.MarginBounds.Left, ev.MarginBounds.Top, _ 
          ev.MarginBounds.Width, ev.MarginBounds.Height) 
    ev.Graphics.DrawString(resultTextBox.Text.Substring(mStringPos, chars), _ 
          fnt, Brushes.Black, rc, _ 
          StringFormat.GenericTypographic) 

    mStringPos += chars 

    ev.HasMorePages = mStringPos < resultTextBox.Text.Length 
End Sub 

Quelqu'un peut-il me dire ce que je fais mal?

+0

La principale chose que vous avez mal fait n'est pas de nous dire quel est le problème. "Il n'imprime pas les onglets", mais que fait-il? –

Répondre

0

Que se passe-t-il si vous faites cela?

Dim fmt as StringFormat 
fmt = StringFormat.GenericTypographic 
fmt.SetTabStops(-- put something here -- ) 
ev.Graphics.DrawString(resultTextBox.Text.Substring(mStringPos, chars), _ 
          fnt, Brushes.Black, rc, _ 
          fmt) 

Est-ce que cela change les choses? (Vérifiez ma syntaxe - Je ne fais généralement pas VB.)

+0

Rien ........ –

Questions connexes