我的vb做了一個小數據庫,在打印msflexgrid控件的數據時用printer控件打印..但使用的時候失敗,不知道是什么原因.....請教一下高手們...
Private Sub print_Click()
Dim usewidth As Integer
Dim useheight As Integer
With Printer
    .PaperSize = 9
    .Orientation = 2
    .ScaleMode = 6
    .FontBold = True
    .ScaleLeft = -20                            
    .ScaleTop = -25                             
    .ScaleWidth = 297                           
    .ScaleHeight = 210                          
    usewidth = .ScaleWidth - 40                 
    useheight = .ScaleHeight - 50              
    .CurrentX = 0
    .CurrentY = 0
End With
With Printer
    .FontSize = 20
    .CurrentX = (usewidth - .TextWidth("成品標籤")) / 2
End With
........
........
每次一運行...在第一個with printer下的第一個屬性就出錯了
提示"執行階段錯誤'-2147417848(80010108)
      papersize方法('_printer)失敗
就是with printer下面的方法都用不了...
請問是什么原因呀.....
郁悶几天了...

解决方案 »

  1.   

    哥们,试一下这个:
    Private Sub print_Click()
    Dim usewidth As Integer
    Dim useheight As Integer
    Dim Printer1 as Printer
    With Printer1
        .PaperSize = 9
        .Orientation = 2
        .ScaleMode = 6
        .FontBold = True
        .ScaleLeft = -20                            
        .ScaleTop = -25                             
        .ScaleWidth = 297                           
        .ScaleHeight = 210                          
        usewidth = .ScaleWidth - 40                 
        useheight = .ScaleHeight - 50              
        .CurrentX = 0
        .CurrentY = 0
    End With
    With Printer1
        .FontSize = 20
        .CurrentX = (usewidth - .TextWidth("成品標籤")) / 2
    End With