VB bitblt使用出错

来源:百度知道 编辑:UC知道 时间:2024/06/23 21:37:20
Private Declare Function BitBlt Lib "gdi32" (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 Sub Command1_Click()
Dim aa As Long
aa = BitBlt(Picture2.hDC, 0, 0, Picture1.Width, Picture1.Height, Picture2.hDC, SRCCOPY)
End Sub

Private Sub Form_Load()
Picture1.Picture = LoadPicture("d:\vbpics\field1.jpg")
End Sub

想用该API函数复制图片框1中的图案到图片框2,却出现错误“参数不可选”

另外想问高手,为什么非得用private Declear才可以,不能用public Declear?

aa = BitBlt(Picture2.hDC, 0, 0, Picture1.Width, Picture1.Height, Picture1.hDC, 0, 0, vbSrcCopy)

你的代码里两处错误,
1、未指定对源DC中源矩形左上角位置
2、srccopy常数未定义

api的public声明只能在标准模块中,不能在窗体模块