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

如何清除capCreateCaptureWindow所產生的視窗

答題得分者是:lee708
marky1
一般會員


發表:17
回覆:29
積分:9
註冊:2003-03-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-14 20:25:20 IP:140.118.xxx.xxx 未訂閱
我在capCreateCaptureWindow產生的視窗的位置也放置了Image物件, 目的是在其位置可切換顯示動態攝影(from webcam)與靜態影像(from file); 當我用capDriverDisconnect將webcam關掉時, 其視窗變成黑色,並佔住那個位置 所以於此位置再顯示靜態影像(Image物件上)時, 會造成repaint問題 有可能將此視窗close? 請給小弟一個方向 謝謝!
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-15 00:05:16 IP:140.135.xxx.xxx 未訂閱
marky1您好:  
引言:目的是在其位置可切換顯示動態攝影(from webcam)與靜態影像(from file)
我提供一個很遜的方式,可能會有更好的方法,您參考看看 您可以將webcam的影像呈現在Panel上,再加上下面的code
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 Panel1->Height=1;
 Panel1->Width=1;
 Image1->Picture->LoadFromFile(靜態影像.bmp);
}
這樣就可以達到您的目的了 順心 <>~我也是在學習的階段,所以請您多多見諒與指教~ 發表人 -
marky1
一般會員


發表:17
回覆:29
積分:9
註冊:2003-03-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-15 01:30:12 IP:140.118.xxx.xxx 未訂閱
感謝taishyang的答覆 不好意思我沒說清楚, 我指的問題是於某一事件發生後所發生的(如按下一button) 事件發生時執行下面程式: capDriverDisconnect(hCapWnd); //將webcam關掉 Image->Picture->LoadFromFile( fileName ); //將fileName顯示於image上 由於capCreateCaptureWindow產生的視窗(parent是Form)的位置也是Image物件(parent是Panel)的位置 而該視窗會以黑色畫面顯示於Image物件之上 注意:fileName的確已顯示於Image物件,但在黑色視窗之下方,所以看不到 所以我才會想把該視窗close掉! 若把上面程式那二行分別以不同事件區分開(如先按button1再按button2) 則fileName顯示於Image物件就ok 但該Form縮到工具列再放大,則黑色畫面又顯示於Image物件之上方 而將其他Form(別的程式)移到該Form的Image元件上再移開,則fileName顯示於Image物件又ok 所以有repaint問題 若將capCreateCaptureWindow產生的視窗與Image物件之parent設為同一Panel, 則無論如何黑色畫面一定都顯示於Image物件之上 請給小弟一個方向 謝謝!
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-15 01:56:32 IP:61.231.xxx.xxx 未訂閱
marky1您好:      我的說方式指的是capCreateCaptureWindow顯示於Panel上   而Image與Panel位置是一樣的,當按下按鈕後,將Panel的畫面縮到最小   這樣一來capCreateCaptureWindow的畫面就不會檔到Image了     順心 <>~我也是在學習的階段,所以請您多多見諒與指教~
marky1
一般會員


發表:17
回覆:29
積分:9
註冊:2003-03-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-07-15 03:28:35 IP:140.118.xxx.xxx 未訂閱
感謝taishyang的答覆 對~ Panel縮小後capCreateCaptureWindow產生的視窗縮小了... 但我希望Image能放在Panel裡面(有美觀的框) 所以parent同樣為Panel的Image也會跟著縮小 我會想把capCreateCaptureWindow產生的視窗close掉 麻煩給小弟一個方向 謝謝!
lee708
一般會員


發表:6
回覆:5
積分:7
註冊:2002-11-24

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-07-15 09:45:03 IP:61.219.xxx.xxx 未訂閱
試試這樣用    
capDriverDisconnect(hCapWnd);
DestroyWindow(hCapWnd);
 
不知是不是你要的
marky1
一般會員


發表:17
回覆:29
積分:9
註冊:2003-03-19

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-07-15 13:20:43 IP:140.118.xxx.xxx 未訂閱
就是這個光!! 感謝lee708的答覆 DestroyWindow()這個指令正是我要的! 謝謝!
系統時間:2024-04-29 10:36:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!