2017-04-14 68 views
0

receiptvb.netで領収書を印刷

私は上記の領収書をvb.netを使用して印刷しようとしています。ただし、イメージに見られるように、金額の数字は新しい行に表示されます。私は間違って何をしていますか?

以下

は、私が使用するコードです:

Private Sub PrintDocument1_PrintPage(sender As Object, e As PrintPageEventArgs) Handles PrintDocument1.PrintPage 

     Dim offset As Integer = 15 
    Dim itemdesc As String = "Item".PadRight(30) 
     Dim Pricedesc As String = "Price".PadRight(8) 
     Dim qtydesc As String = "Qty".PadRight(5) 
     Dim amtdesc As String = "Amount" 
     Dim descline As String = itemdesc + Pricedesc + qtydesc + amtdesc 
     e.Graphics.DrawString(descline, New Font("Courier New", 8, FontStyle.Regular), Brushes.Black, 25, 100 + offset) 
     offset += 10 
    Dim startx As Integer = 25 
     Dim starty As Integer = 100 

     Dim font As New Font("Courier New", 8, FontStyle.Regular) 
     Dim item As String 
     Dim price As String 
     Dim qty As String 
     Dim amount As String 

    Dim productline As String 
     For k As Integer = 0 To dgvSales.RowCount - 2 

      item = dgvSales.Rows(k).Cells(1).Value.ToString.PadRight(30) 
      price = dgvSales.Rows(k).Cells(3).Value.ToString.PadRight(8) 
      qty = dgvSales.Rows(k).Cells(4).Value.ToString.PadRight(5) 
      amount = dgvSales.Rows(k).Cells(5).Value.ToString 
      productline = item + price + qty + amount 
      e.Graphics.DrawString(productline, font, Brushes.Black, startx, starty + offset) 
      offset += 20 

     Next 
End Sub 
+0

[タグ:サーマルプリンタ]とは何が関係していますか? – cybermonkey

+0

その列に1文字を印刷して、正しい場所にレンダリングするかどうか確認してください。 – halfer

+0

@halfer金額欄に1文字を印刷しようとしましたが、次の行に印刷されています – Sonam

答えて

1

三つの可能性があります。

  • あなたのコラム数量(列IDX 4)は、その中に改行を持っている文字列が含まれています。これが当てはまる場合は、値を結合する前に値をTrim()にするだけです。
  • あなたの列の量には多くのスペースが含まれているか、改行文字で始まります。この場合は、Trim()を使用して修正することもできます。今回は、値を結合する前に変数amountを使用します。
  • これは私がまだ考えていないものです:)。
+1

downvoter:今後改善の余地があることを示す小さなコメントをお寄せください。 – Mr47

+0

私は以下のように数量と量の両方にTrim()を使用しましたが、機能しませんでした。 Qty = トリム(dgvSales.Rows(k).Cells(4).Value.ToString.PadRight(5)) amount =トリム(dgvSales.Rows(k).Cells(5).Value.ToString) – Sonam

+0

私は使用しましたトリム()。出来た。ご協力ありがとうございました。私にはたくさんのことを意味する。 – Sonam

関連する問題