全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1691
推到 Plurk!
推到 Facebook!

擷取出影像為全黑

尚未結案
abcd12345
一般會員


發表:6
回覆:4
積分:2
註冊:2008-10-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-01-13 17:18:05 IP:118.169.xxx.xxx 訂閱

void __fastcall TForm2::Button1Click(TObject *Sender)
{ Timer2->Interval=1000;
if(ScrollBar1->Position==ScrollBar1->Max){Timer2->Interval=0;}
else{

TCanvas *copy1= new TCanvas;
HDC hDC = GetDC(Panel1->Handle);
copy1->Handle =hDC;
Graphics::TBitmap *CapImg = new Graphics::TBitmap();
CapImg->Width = Panel1->Width;
CapImg->Height = Panel1->Height;
CapImg->Canvas->CopyRect(Rect(0, 0, CapImg->Width, CapImg->Height),
copy1,Rect(0, 0, Panel1->Width, Panel1->Height));
Image2->Picture->Assign(CapImg);
name="000" IntToStr(i);
name=name ".jpg";
i=i 1;
CapImg->SaveToFile(name);
}}
以上是我擷取 影片的按鈕0.0

可是為瞎咪擷取出來的圖片都是黑色的,我已經確認過 imeage和panel大小是一樣的,讀取的影片也是屬於MediaPlayer。

哪位大大可以幫忙解答可能是哪出了問題
編輯記錄
abcd12345 重新編輯於 2009-01-13 17:21:08, 註解 無‧
abcd12345 重新編輯於 2009-01-13 17:22:52, 註解 無‧
boss.tw
高階會員


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-01-15 10:01:19 IP:60.250.xxx.xxx 訂閱
我試過如果不是擷取影片的話
是可以正確擷取到 panel 的畫面

應該是因為 影片使用 DirectShow 方法秀圖
所以擷取 panel 的畫面時,擷取不到真正影片的畫面
kenjigan
一般會員


發表:2
回覆:4
積分:6
註冊:2004-08-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-01-16 11:07:23 IP:61.230.xxx.xxx 訂閱
不能取影的原因如樓上兄所說,
到調整顯示器解析度的頁面, "設定值" 中選 "進階", "疑難排解" 中的硬體加速, 停止所有 DirectDraw, ......, 套用後應該就可以取影像了,
------
=========================
Kenji Gan
abcd12345
一般會員


發表:6
回覆:4
積分:2
註冊:2008-10-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-01-16 12:52:32 IP:58.114.xxx.xxx 訂閱
感謝各位大大解答 我來去試一下
系統時間:2024-04-26 3:42:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!