線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1206
推到 Plurk!
推到 Facebook!

拮取螢幕畫面中圖形的問題

答題得分者是:boss.tw
eulor2000
一般會員


發表:51
回覆:34
積分:17
註冊:2008-11-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-06-13 09:59:46 IP:203.71.xxx.xxx 訂閱
擷取螢幕畫面後要找form1內的Image1上影像,我是利用form的座標點定位去擷取範圍,但是似乎都不對,請資深板友指導



程式碼如下:
int x_1,y_1;
HDC ScreenDC=GetDC(0);
Graphics::TBitmap *pBitmap = new Graphics::TBitmap();
pBitmap->Width =Image1->Picture->Bitmap->Width ;
pBitmap->Height =Image1->Picture->Bitmap->Height ;
x_1=Form1->Top Form1->Image1->Top; //設定擷去螢幕中form1中Image1
y_1=Form1->Left Form1->Image1->Left;
StretchBlt(pBitmap->Canvas->Handle,
0, //貼上到新圖左上起始點
0,
pBitmap->Width, ////貼上到新圖下終點
pBitmap->Height,
ScreenDC,
x_1, //螢幕剪下的左上起始點
y_1,
pBitmap->Width, //螢幕剪下的下終點
pBitmap->Height,
SRCCOPY
);
pBitmap->SaveToFile("C://test.bmp");
ReleaseDC(0,ScreenDC);
delete pBitmap;

boss.tw
高階會員


發表:15
回覆:109
積分:194
註冊:2005-05-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2011-06-13 13:24:10 IP:60.250.xxx.xxx 訂閱

[code cpp]
TPoint ss;
ss.x =0;
ss.y =0;
ss = Image1->ScreenToClient(ss);

[/code]
取得image1 相對螢幕的座標,剩下的靠你了
eulor2000
一般會員


發表:51
回覆:34
積分:17
註冊:2008-11-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2011-06-13 19:21:52 IP:203.71.xxx.xxx 訂閱
感謝你提供方法...可以....我想好久最後還有另外一個方法也可以找form的左上角座標+form上image座標亦可
只是你的方法好快.....謝謝你
系統時間:2017-10-21 9:20:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!