You are on page 1of 1

Private Declare Auto Function BitBlt Lib "gdi32.

dll" (ByVal _ hdcDest As IntPtr, ByVal nXDest As Integer, ByVal _ nYDest As Integer, ByVal nWidth As Integer, ByVal _ nHeight As Integer, ByVal hdcSrc As IntPtr, ByVal nXSrc _ As Integer, ByVal nYSrc As Integer, ByVal dwRop As _ System.Int32) As Boolean Private Const SRCCOPY As Integer = &HCC0020 ' Save the picture. Private Sub btnSave_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles btnSave.Click Dim bm As Bitmap = GetFormImage() bm.Save(txtFile.Text, ImageFormat.Bmp) Beep() End Sub Private Function GetFormImage() As Bitmap ' Get this form's Graphics object. Dim me_gr As Graphics = Me.CreateGraphics ' Make a Bitmap to hold the image. Dim bm As New Bitmap(Me.ClientSize.Width, _ Me.ClientSize.Height, me_gr) Dim bm_gr As Graphics = me_gr.FromImage(bm) Dim bm_hdc As IntPtr = bm_gr.GetHdc ' Get the form's hDC. We must do this after ' creating the new Bitmap, which uses me_gr. Dim me_hdc As IntPtr = me_gr.GetHdc ' BitBlt the form's image onto the Bitmap. BitBlt(bm_hdc, 0, 0, Me.ClientSize.Width, _ Me.ClientSize.Height, _ me_hdc, 0, 0, SRCCOPY) me_gr.ReleaseHdc(me_hdc) bm_gr.ReleaseHdc(bm_hdc) ' Return the result. Return bm End Function

You might also like