用VB捕捉屏幕图象
声明:
PrivateDeclareFunctionReleaseDCLib"user32"(ByValhwndAsLong,ByValhdcAsLong)AsLong PrivateDeclareFunctionOpenClipboardLib"user32"(ByValhwndAsLong)AsLong PrivateDeclareFunctionEmptyClipboardLib"user32"()AsLong PrivateDeclareFunctionSetClipboardDataLib"user32"(ByValwFormatAsLong,ByValhMemAsLong)AsLong PrivateDeclareFunctionSelectObjectLib"gdi32"(ByValhdcAsLong,ByValhObjectAsLong)AsLong PrivateDeclareFunctionDeleteDCLib"gdi32"(ByValhdcAsLong)AsLong PrivateDeclareFunctionBitBltLib"gdi32"(ByValhDestDCAsLong, ByValxAsLong,ByValyAsLong,ByValnWidthAsLong,ByValnHeightAsLong,ByValhSrcDCAsLong,ByValxSrcAsLong,ByValySrcAsLong,ByValdwRopAsLong)AsLong PrivateDeclareFunctionCreateDCLib"gdi32"Alias"CreateDCA"(ByVallpDriverNameAsString,ByVallpDeviceNameAsString,ByVallpOutputAsString,lpInitDataAsLong)AsLong PrivateDeclareFunctionCreateCompatibleDCLib"gdi32"(ByValhdcAsLong)AsLong PrivateDeclareFunctionCreateCompatibleBitmapLib"gdi32"(ByValhdcAsLong,ByValnWidthAsLong,ByValnHeightAsLong)AsLong PrivateDeclareFunctionCloseClipboardLib"user32"()AsLong 函数: SubScrnCap(Lt,Top,Rt,Bot) rWidth=Rt-Lt rHeight=Bot-Top SourceDC=CreateDC("DISPLAY",0,0,0) DestDC=CreateCompatibleDC(SourceDC) BHandle=CreateCompatibleBitmap(SourceDC,rWidth,rHeight) SelectObjectDestDC,BHandle BitBltDestDC,0,0,rWidth,rHeight,SourceDC,Lt,Top,&HCC0020 Wnd=Screen.ActiveForm.hwnd OpenClipboardWnd EmptyClipboard SetClipboardData2,BHandle CloseClipboard DeleteDCDestDC ReleaseDCDHandle,SourceDC EndSub 以下的示例把屏幕图象捕捉后,放到Picture1中。 SubCommand1_Click() Form1.Visible=False ScrnCap0,0,640,480 Form1.Visible=True picture1=Clipboard.GetData() EndSub-> 上一篇:VisualBasic设计图形浏览器示例 下一篇:放置“透明”的图片 更多相关文章
|
推荐文章
精彩文章
|