我的表單超出一個畫面(1024*768)我寫下面的程式卻無法將超出畫面的表單列印出來
不知問題出在哪裡

Public Sub mprint_Click()

  'Printer.PaperSize = 9 '設定A4 SIZE
  Dim sx As Long, sy As Long, hDC As Long
  Dim px As Long, py As Long
  Picture1.ScaleMode = vbPixels
  sx = Picture1.Width / Screen.TwipsPerPixelX
  sy = Picture1.Height / Screen.TwipsPerPixelY
  picprint.Width = sx
  picprint.Height = sy
  picprint.AutoRedraw = True
  hDC = GetWindowDC(Me.hWnd)
  BitBlt picprint.hDC, 0, 0, sx, sy, hDC, 0, 0, vbSrcCopy
  ReleaseDC Me.hWnd, hDC
  picprint.AutoRedraw = False
  
  Set picprint.Picture = picprint.Image
  Picture1.ScaleMode = vbTwips
  Printer.ScaleMode = vbTwips
  px = (Printer.ScaleWidth - picprint.Width) / 2
  py = (Printer.ScaleHeight - picprint.Height) / 2
  Printer.PaintPicture picprint.Picture, px, py
  Printer.NewPage
  Printer.PaintPicture picprint.Picture, px, py

  Printer.EndDoc
  

End Sub
arrow
arrow
    全站熱搜

    vbqa 發表在 痞客邦 留言(0) 人氣()