有如下代码:
Private Sub Command1_Click()
black = RGB(0, 0, 0)
white = RGB(255, 255, 255)
position = 0 '拷贝piccel到picmatte上
r% = BitBlt(ByVal Picmatte.hDC, ByVal 0, ByVal 0, ByVal PicCel.Width, ByVal PicCel.Height, ByVal PicCel.hDC, ByVal 0, ByVal 0, ByVal srccopy)
For scanline = 0 To (PicCel.Height - 1)
Do '取得picmatte上坐标为(position,scanline)点的颜色
currentcolor = GetPixel(Picmatte.hDC, position, scanline)
If current Or Picmatte.Point(scanline, position) <> black Then '如果该点不为黑色,则置为白色
retlong = SetPixel(Picmatte.hDC, position, scanline, white) '出错
End If
position = position + 1
Loop While position = PicCel.Width
position = 0
Next scanline '创建原位图piccel的反相图象
r% = BitBlt(ByVal PicCel.hDC, ByVal 0, ByVal 0, ByVal PicCel.Width, ByVal PicCel.Height, ByVal Picmatte.hDC, ByVal 0, ByVal 0, srcinvert)
r% = BitBlt(ByVal Bkgrd.hDC, ByVal 10, ByVal 10, ByVal PicCel.Width - 1, ByVal PicCel.Height - 1, ByVal Picmatte.hDC, ByVal 0, ByVal 0, srcpaint)
r% = BitBlt(ByVal Bkgrd.hDC, ByVal 10, ByVal 10, ByVal PicCel.Width - 1, ByVal PicCel.Height - 1, ByVal PicCel.hDC, ByVal 0, ByVal 0, ByVal srcinvert)
End Sub当执行到‘出错 标记的这行时 出错 时事错误 '6' 溢出
为什么,如何解决?
Private Sub Command1_Click()
black = RGB(0, 0, 0)
white = RGB(255, 255, 255)
position = 0 '拷贝piccel到picmatte上
r% = BitBlt(ByVal Picmatte.hDC, ByVal 0, ByVal 0, ByVal PicCel.Width, ByVal PicCel.Height, ByVal PicCel.hDC, ByVal 0, ByVal 0, ByVal srccopy)
For scanline = 0 To (PicCel.Height - 1)
Do '取得picmatte上坐标为(position,scanline)点的颜色
currentcolor = GetPixel(Picmatte.hDC, position, scanline)
If current Or Picmatte.Point(scanline, position) <> black Then '如果该点不为黑色,则置为白色
retlong = SetPixel(Picmatte.hDC, position, scanline, white) '出错
End If
position = position + 1
Loop While position = PicCel.Width
position = 0
Next scanline '创建原位图piccel的反相图象
r% = BitBlt(ByVal PicCel.hDC, ByVal 0, ByVal 0, ByVal PicCel.Width, ByVal PicCel.Height, ByVal Picmatte.hDC, ByVal 0, ByVal 0, srcinvert)
r% = BitBlt(ByVal Bkgrd.hDC, ByVal 10, ByVal 10, ByVal PicCel.Width - 1, ByVal PicCel.Height - 1, ByVal Picmatte.hDC, ByVal 0, ByVal 0, srcpaint)
r% = BitBlt(ByVal Bkgrd.hDC, ByVal 10, ByVal 10, ByVal PicCel.Width - 1, ByVal PicCel.Height - 1, ByVal PicCel.hDC, ByVal 0, ByVal 0, ByVal srcinvert)
End Sub当执行到‘出错 标记的这行时 出错 时事错误 '6' 溢出
为什么,如何解决?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货