31.デバイスコンテキストから他のデバイスコンテキストへコピーする
< 使用用途 >
ビットマップをコピーしたり変化させる
< 説明 >
API関数のBitBlt を使用します。
BitBlt =>ビットマップを変化させる
<引数>
hDestDC: コピー先のデバイスコンテキスト
x: コピー先の左上隅のx座標
y: コピー先の左上隅のy座標
nWidth: 転送される幅
nHeight: 転送される高さ
hSrcDC: コピー元のデバイスコンテキスト
xSrc: コピー元の左上隅のx座標
ySrc: コピー元の左上隅のy座標
dwRop: ラスタ操作(定数参照)
@戻り値@
正常終了0以外
< SAMPLE >
'標準モジュール
Public Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As
Long, ByVal x As Long, ByVal y As Long, ByVal nWidthAs Long, ByVal nHeight
As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long,
ByVal dwRop As Long) As Long
Public Const SRCCOPY = &HCC0020 'コピー元をコピー
Public Const SRCPAINT = &HEE0086 'コピー元とコピー先をOR合成
Public Const SRCAND = &H8800C6 'コピー元とコピー先をAND合成
Public Const SRCINVERT = &H660046 'コピー元とコピー先をXOR合成
Public Const SRCERASE = &H440328
Public Const NOTSRCCOPY = &H330008 'コピー元を反転してコピー
Public Const NOTSRCERASE = &H1100A6
Public Const MERGECOPY = &HC000CA
Public Const MERGEPAINT = &HBB0226
Public Const PATCOPY = &HF00021
Public Const PATPAINT = &HF80A09
Public Const PATINVERT = &H5A0049
Public Const DSTINVERT = &H550009 'コピー先を反転してコピー
Public Const BLACKNESS = &H42 'すべてを黒にしてコピー
Public Const WHITENESS = &HFF0062 'すべてを白にしてコピー
'ここからはフォームの処理
Private Sub Command1_Click()
Dim Ret As Long
’picture1の画像をpicture2にコピーする
Ret = BitBlt(Picture2.hDC, 0, 0, Picture1.Width, Picture1.Height,
Picture1.hDC, 0, 0, SRCCOPY)
End Sub