VB初心者質問スレ Part6
■ このスレッドは過去ログ倉庫に格納されています
0613デフォルトの名無しさん
NGNG--------------------------------宣言--------------------------------
Const SRCCOPY = &HCC0020 '転送先=転送元
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Private Declare Function BitBlt Lib "GDI32" (ByVal hDestDC&, ByVal X&, ByVal Y&, ByVal nWidth&, ByVal nHeight&, ByVal hSrcDC&, ByVal xSrc&, ByVal ySrc&, ByVal dwRop&) As Long
Private Declare Function GetDC Lib "USER32" (ByVal hWnd&) As Long
Private Declare Function GetWindowDC Lib "USER32" (ByVal hWnd&) As Long
Private Declare Function GetForegroundWindow Lib "USER32" () As Long
Private Declare Function GetWindowRect Lib "USER32" (ByVal hWnd&, lpRect As RECT) As Long
Private Declare Function CreateCompatibleDC Lib "GDI32" (ByVal hDC&) As Long
Private Declare Function CreateCompatibleBitmap Lib "GDI32" (ByVal hDC&, ByVal nWidth&, ByVal nHeight&) As Long
Private Declare Function SelectObject Lib "GDI32" (ByVal hDC&, ByVal hObject&) As Long
Private Declare Function DeleteObject Lib "GDI32" (ByVal hObject&) As Long
Private Declare Function DeleteDC Lib "GDI32" (ByVal hDC&) As Long
Private Declare Function ReleaseDC Lib "USER32" (ByVal hWnd&, ByVal hDC&) As Long
------------------------------関数-----------------------------------------------
rc = GetWindowRect(hActiveWnd, R)
W = R.Right - R.Left
H = R.Bottom - R.Top
hSourceDC = GetWindowDC(hActiveWnd) 'フォーム全体のDC
hMemoryDC = CreateCompatibleDC(hSourceDC) 'デバイスコンテキストと同じ属性のメモリーを確保
hBMP = CreateCompatibleBitmap(hSourceDC, W, H) 'メモリー上のBMPのハンドル
rc = SelectObject(hMemoryDC, hBMP)
rc = BitBlt(hMemoryDC, 0, 0, W, H, hSourceDC, 0, 0, SRCCOPY) 'イメージをコピー
'デバイスコンテキストを開放
rc = DeleteObject(hBMP)
rc = DeleteDC(hMemoryDC)
rc = ReleaseDC(hActiveWnd, hSourceDC)
-------------------------------------------------------------------------------------------------------
俺にはコレくらいしか思いつかん。
あとはうまい事改良してくれ
■ このスレッドは過去ログ倉庫に格納されています