۰۳-شهریور-۱۳۸۷, ۱۱:۵۲:۱۵
سلام.من میخوام از فرمم عکس بگیرم حالا یا با printscreen یا هر روش دیگه. برنامه زیر میاد یک تصویر از notepad میگیره و تو فرم نشون میده که بدردم نخورد. نمیدونم که چطور با printwindow , findwindow میشه از فرم عکس بگیرم
Private Declare Function PrintWindow Lib "user32" (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
Dim mWnd As Long
Me.AutoRedraw = True
Shell "Notepad.exe", vbNormalNoFocus
DoEvents
mWnd = FindWindow("Notepad", vbNullString)
If mWnd = 0 Then
Me.Print "NotePad not found"
Else
PrintWindow mWnd, Me.hDC, ByVal 0&
End If
End Sub
Private Declare Function PrintWindow Lib "user32" (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Form_Load()
Dim mWnd As Long
Me.AutoRedraw = True
Shell "Notepad.exe", vbNormalNoFocus
DoEvents
mWnd = FindWindow("Notepad", vbNullString)
If mWnd = 0 Then
Me.Print "NotePad not found"
Else
PrintWindow mWnd, Me.hDC, ByVal 0&
End If
End Sub