VC6开发视频监控ActiveX控件总结
? ?總結(jié)前段時(shí)間在VC6下使用MFC開(kāi)發(fā)視頻監(jiān)控控件過(guò)程中遇到的一些問(wèn)題.
1.獲取控件當(dāng)前所在路徑,用于讀取該目錄下的INI配置文件
獲取配置文件路徑?
2.獲取當(dāng)前運(yùn)行控件的電腦上的固定盤(pán)符列表,用于本地錄像文件存放
獲取固定盤(pán)符列表的函數(shù)?
3.視頻1,4,9,16路畫(huà)面切換顯示
?? 較簡(jiǎn)單地實(shí)現(xiàn),在窗體上拖16個(gè)STATIC控件(定義數(shù)組為panels),動(dòng)態(tài)調(diào)整它們的位置大小即可,然后定義一個(gè)類(lèi)如CPlayStatic去繼承CStatic,每一個(gè)STATIC控件就由CPlayStatic管理;因?yàn)槲覀円赟tatic控件上添加鼠標(biāo),鍵盤(pán)事件處理,鼠標(biāo)單擊事件,選中該一播放面板時(shí)繪制綠色邊框,可以很明顯地看出當(dāng)前是選中那一路視頻播放窗體,同時(shí)恢復(fù)上一路選中邊框?yàn)槟J(rèn)灰色邊框;鼠標(biāo)雙擊事件,實(shí)現(xiàn)視頻瀏覽窗口的全屏功能(按多路預(yù)覽-->單屏預(yù)覽-->全屏-->單路瀏覽-->多路預(yù)覽);右擊菜單,對(duì)當(dāng)前畫(huà)面進(jìn)行操作,如本地錄像,語(yǔ)音對(duì)講,抓圖等操作;鍵盤(pán)事件處理,如該窗體當(dāng)前正在預(yù)覽按F2/F鍵進(jìn)入全屏模式,按Esc退出全屏,恢復(fù)普通模式(需讓該窗體獲得焦點(diǎn),處理KeyDown事件)
1,4,9,16路畫(huà)面切換?
4.畫(huà)面全屏顯示 需注意播放窗口全屏后,就不能夠通過(guò)GetDlgItem(int ctrlid)獲取到該STATIC控件句柄了
全屏?
5.如果ActiveX控件要使用其它第三方的ActiveX,需在InitInstance()方法中添加AfxEnableControlContainer(); 否則會(huì)造成第三方控件無(wú)法顯示,控件創(chuàng)建出錯(cuò)
6.ActiveX在網(wǎng)頁(yè)中使用
? 需使用object標(biāo)簽,其classid具體值可在odl文件中找到,一般在文件最后,不要弄錯(cuò),否則將會(huì)造成控件無(wú)法成功創(chuàng)建; odl文件中包含了控件的所有屬性,方法以及事件;使用如下
<object id="ocx1" height="520" width="640"?
??????classid="clsid:D55EFD59-8482-4486-9FDE-669EFAC4221B">
?????</object>
若JavaScript想調(diào)用控件的方法,可以這樣ocx1.RealPlay();調(diào)用控件的RealPlay方法
?
7.相關(guān)參考文章
使用MFC開(kāi)發(fā)ActiveX控件全過(guò)程
ActiveX的設(shè)計(jì)
在ActiveX控件中引入窗體技術(shù)
如何將MFC ActiveX控件標(biāo)記為安全
將ActiveX控件標(biāo)記為腳本安全和初始化安全
ActiveX控件數(shù)字簽名的實(shí)現(xiàn)
ActiveX安全:改進(jìn)和最佳實(shí)踐[MSDN]
JavaScript 響應(yīng) ActiveX 事件
ActiveX組件與JavaScript交互?
javascript腳本中定義的參數(shù)數(shù)組,如何在VC++中訪問(wèn)
IExpress壓縮CAB文件及制作安裝程序所開(kāi)發(fā)的小工具
Web發(fā)布cab文件打包的ActiveX控件總結(jié)
制作cab包,參考inf文件
本文轉(zhuǎn)自peterzb博客園博客,原文鏈接:http://www.cnblogs.com/peterzb/archive/2009/05/28/1491198.html,如需轉(zhuǎn)載請(qǐng)自行聯(lián)系原作者。
總結(jié)
以上是生活随笔為你收集整理的VC6开发视频监控ActiveX控件总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 信息时代把数据当成了信息,互联网让数据真
- 下一篇: 浅析Memcache和Redis