想把Form1所顯現之影像 映射到Image1box |
答題得分者是:taishyang
|
residue
中階會員 發表:90 回覆:153 積分:53 註冊:2003-07-02 發送簡訊給我 |
|
aquarius
資深會員 發表:3 回覆:347 積分:330 註冊:2003-05-21 發送簡訊給我 |
試試這個, 看是不是你要的!!
procedure TForm1.Button1Click(Sender: TObject); var bmp : TBitmap ; begin bmp:=TBitmap.Create ; bmp.width:=form1.ClientWidth ; bmp.height:=form1.Clientheight ; bitblt(bmp.canvas.handle, 0, 0, Clientwidth-1, Clientheight-1, canvas.handle, 0, 0, SRCCOPY) ; bmp.SaveToFile('C:\1.bmp') ; bmp.free ; end;...Aquarius
------
水瓶男的blog: http://791909.blogspot.com |
seeing
初階會員 發表:49 回覆:131 積分:41 註冊:2002-11-07 發送簡訊給我 |
|
qoo1234
版主 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
seeing跟你說喔~ aquarius大大的範例~可以用喔! 而且不用完整範例喔~ ============ class="code">
unit Unit1; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls; type
TForm1 = class(TForm)
Image1: TImage;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);
var
bmp : TBitmap ;
begin
bmp:=TBitmap.Create ;
bmp.width:=form1.ClientWidth ;
bmp.height:=form1.Clientheight ; bitblt(bmp.canvas.handle,
0,
0,
Clientwidth-1,
Clientheight-1,
canvas.handle,
0,
0,
SRCCOPY) ;
bmp.SaveToFile('C:\xxx.bmp') ;//儲存所抓取的畫面
Image1.Picture.LoadFromFile('C:\xxx.bmp');//預覽已抓畫面
bmp.free ;
end;
end.
=================================================== 網海無涯,學無止境! 發表人 - qoo1234 於 2003/07/15 22:46:30
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
qoo1234
版主 發表:256 回覆:1167 積分:659 註冊:2003-02-24 發送簡訊給我 |
|
aquarius
資深會員 發表:3 回覆:347 積分:330 註冊:2003-05-21 發送簡訊給我 |
引言:引言: 我測試之後,好像只支援Preview Mode Overlay Mode不行 <>~我也是在學習的階段,回答的不好請您多多見諒與指教~> >>< face="Verdana, Arial, Helvetica"> 對阿~處於堪用狀態~ < src="http://delphi.ktop.com.tw/download/upload\33223_qoo.gif">網海無涯,學無止境!嗯... 手頭沒硬體, 沒法子測試. 不過猜想應該是 Overlap mode 使用 DirectX 的 function 加速顯示, 所以才會抓不到. 因為沒硬體, 所以.... 請手頭有設備的多試試吧!! ...
------
水瓶男的blog: http://791909.blogspot.com |
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
aquarius
資深會員 發表:3 回覆:347 積分:330 註冊:2003-05-21 發送簡訊給我 |
引言: aquarius您好:可以去試試不同的 DC . 我現在用的 DC 是 FORM 的 DC, 或許可以試試桌面的 DC, 或顯示影像那個物件的 DC . 若對 DC 有疑問, 就看看 GetDC 的 HELP 吧!!... :) ...Aquarius引言:不過猜想應該是 Overlap mode 使用 DirectX 的 function 加速顯示, 所以才會抓不到.因為沒硬體, 所以.... 請手頭有設備的多試試吧!!請問該如何測試??< > 不會是要去 > 謝謝 順心< > <>~我也是在學習的階段,回答的不好請您多多見諒與指教~
------
水瓶男的blog: http://791909.blogspot.com |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |