فرمت تابع bitblt به شکل زیر هستش.
Private Declare Function BitBlt Lib "gdi32.dll" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
البته اگه میخواید توی ماژول تعریفش کنید معمولآ باید بجای private از public استفاده کنید.
البته اگه میخواید توی ماژول تعریفش کنید معمولآ باید بجای private از public استفاده کنید.
حالا به ترتیب توضیحشون میدم.
hDestDC=اچ دی سی (hdc) کنترلی که عکس به اون منتقل میشه.یعنی عکس ما توش کپی میشه.
x=نقطه ی شروع ترسیم(عکس جدید)در راستای افقی.
y=نقطه ی شروع ترسیم(عکس جدید)در راستای عمودی.
nWidth=عرض تصویر جدید.
nHeight=طول تصویر جدید.
hSrcDC=اچ دی سی (hdc) کنترلی که تصویر از اونجا کپی میشه(کنترل مبدع).
xSrc=نقطه ی شروع کپی شدن در راستای افق عکس(کنترل مبدع)
ySrc=نقطه ی شروع کپی شدن عکس در راستای عمود(کنترل مبدع)
dwRop=یک ثابت(constant)که در زیر توضیح داده شده.
تعداد زیادی ثابت وجود داره ولی ما با تابع زیر شروع میکنیم.این تابع عکس رو بدون هیچ دستکاری از کنترل مبدع به کنترل مقصد کپی میکنه.
Private Const SRCCOPY As Long = &HCC0020
در زیر یک نمونه اورده شده است.
در زیر یک نمونه اورده شده است.
BitBlt Picture2.hDC, 0, 0, Picture2.ScaleWidth, Picture2.ScaleHeight, Picture1.hDC, 0, 0, SRCCOPY
به ثابت روبه رو نگاه کنید. Public Const MERGEPAINT = &HBB0226
به ثابت روبه رو نگاه کنید. Public Const MERGEPAINT = &HBB0226
این ثابت به رنگ پس زمینه ی کنترلی که عکس در آن کپی میشود بستگی دارد.
رنگ backcolor کنترل مقصدرو عوض کنید و بعد عکس رو کپی کنید و نتیجه رو ببینید.
ثابتت زیر رنگ عکس کپی شده رو عوض میکنه ولی با backcolor کاری نداره.
Public Const NOTSRCCOPY = &H330008
همون طور که گفتم برای این تابع ثوابت زیادی وجود داره که در زیر لیست شدن.ولی از توضیح دادن همه ی آنها معذورم.البته خودتون راحت میتونید دونه دونه امتحانش کنید.
Public Const BLACKNESS = &H42
Public Const DSTINVERT = &H550009
Public Const MERGECOPY = &HC000CA
Public Const MERGEPAINT = &HBB0226
Public Const NOTSRCCOPY = &H330008
Public Const NOTSRCERASE = &H1100A69
Public Const SRCAND = &H8800C6
Public Const SRCCOPY = &HCC0020
Public Const SRCERASE = &H440328
Public Const SRCINVERT = &H660046
Public Const SRCPAINT = &HEE0086
Public Const WHITENESS = &HFF0062
Public Const DSTINVERT = &H550009
Public Const MERGECOPY = &HC000CA
Public Const MERGEPAINT = &HBB0226
Public Const NOTSRCCOPY = &H330008
Public Const NOTSRCERASE = &H1100A69
Public Const SRCAND = &H8800C6
Public Const SRCCOPY = &HCC0020
Public Const SRCERASE = &H440328
Public Const SRCINVERT = &H660046
Public Const SRCPAINT = &HEE0086
Public Const WHITENESS = &HFF0062