版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)八ActiveX控件的創(chuàng)建和使用一實(shí)驗(yàn)?zāi)康?掌握基于MFC創(chuàng)建ActiveX控件的過程2掌握ActiveX控件的屬性和事件的編程方法3了解非標(biāo)準(zhǔn)形狀控件的編程方法二實(shí)驗(yàn)要求8.1創(chuàng)建一個(gè)控件,在控件上顯示一串字符,設(shè)置屬性,可以對(duì)顯示的字符進(jìn)行設(shè)置和修改;另一方面,設(shè)置兩個(gè)事件,當(dāng)鼠標(biāo)移動(dòng)時(shí),將鼠標(biāo)的位置告知,當(dāng)鼠標(biāo)左鍵壓下時(shí),產(chǎn)生另一個(gè)事件,告知鼠標(biāo)位置。編寫測(cè)試程序,在對(duì)話窗口上使用編寫的控件,可以輸入在控件上待顯示的字符,當(dāng)鼠
2、標(biāo)在控件上移動(dòng)時(shí),在對(duì)話框上顯示其坐標(biāo)。當(dāng)鼠標(biāo)左鍵壓下時(shí),產(chǎn)生另一個(gè)事件,告知鼠標(biāo)位置。8.2創(chuàng)建一橢圓形控件(或其它形狀),雙擊后彈出顏色設(shè)置對(duì)話窗口,選擇其中顏色,將控件顏色設(shè)置為選擇的顏色。編寫測(cè)試程序,在測(cè)試程序中測(cè)試控件的功能。三實(shí)驗(yàn)過程實(shí)驗(yàn)1步驟:(1)首先利用MFCActiveXControlWizard生成一個(gè)ActiveX控件程序的框架。在VC開發(fā)環(huán)境中,選擇【FileNew】菜單項(xiàng),在打開的對(duì)話框上選擇Project
3、s選項(xiàng)卡,并在列表框中MFCActiveXControlWizard工程命名為:Example1。然后單擊【OK】進(jìn)入向?qū)У牡谝徊?,直接單擊【Finish】按鈕保持所有默認(rèn)設(shè)置不變。說明:其中CExample1App類是從CWinApp派生的,所以可以把該類看作是一個(gè)應(yīng)用程序類。CExample1Ctrl類是從CWnd類派生的,對(duì)控件窗口進(jìn)行的操作都將在CExample1Ctrl類中完成。在CExample1Ctrl類的頭文件中提供了消
4、息映射、調(diào)度映射和事件映射。調(diào)度映射是為了讓外部應(yīng)用程序可以方便地訪問控件的屬性和方法,而事件映射讓控件可以向包含它的容器發(fā)送事件通知。Example1PropPage類派生于CDialog類,是用來顯示Example1控件的屬性頁的,該類和一個(gè)ID為IDD_PROPPAGE_EXAMPLE1的對(duì)話框資源相對(duì)應(yīng)。在上述介紹的三個(gè)類的上面還有兩項(xiàng)內(nèi)容:_DExample1和_DExample1Events,它們都于是我們可以加載特定的Ac
5、tiveX控件了,方法是選擇【EditNewControl...】菜單項(xiàng),這時(shí)將打開如下圖所示的對(duì)話框:選中我們創(chuàng)建的Example1控件,單擊對(duì)話框上的【OK】按鈕關(guān)閉對(duì)話框,這時(shí),在ActiveXControlTestContainer應(yīng)用程序中就加載了Example1控件。這時(shí)該控件的代碼都是MFC自動(dòng)生成的。(3)控件功能的實(shí)現(xiàn)。首先將CExample1Ctrl類中OnDraw函數(shù)中自動(dòng)生成的兩行代碼注釋起來,它們分別用來填充控
6、件的背景和繪制橢圓。然后為控件添加自定義屬性,選擇ClassWizard對(duì)話框上的Automation選項(xiàng)卡,然后單擊【AddProperty】按鈕,將彈出屬性對(duì)話框。在Externalname中填寫屬性名稱為“SetText”類型選擇為“CString”變量名被自動(dòng)的設(shè)置為m_setText,而且ClassWizard為該控件增加了一個(gè)通知函數(shù):OnSetTextChanged,當(dāng)在外部修改屬性時(shí),這個(gè)函數(shù)將被調(diào)用。在添加屬性對(duì)話框上
7、還有三個(gè)單選按鈕,保持默認(rèn)選擇的Membervariable當(dāng)選擇該選項(xiàng)后,ClassWizard會(huì)為該屬性生成一個(gè)成員變量和一個(gè)通知函數(shù)。在CExample1Ctrl類的構(gòu)造函數(shù)中對(duì)m_setText進(jìn)行初始化,加入代碼:m_setText=“你好!“在通知函數(shù)OnSetTextChanged中加入代碼如下:Invalidate()使窗口發(fā)生重繪調(diào)用OnDraw函數(shù),在OnDraw函數(shù)中加入代碼如下:pdcTextOut(00m_se
8、tText)(4)為控件增加標(biāo)準(zhǔn)事件。選擇ClassWizard對(duì)話框上的ActiveXEvents選項(xiàng)卡,然后單擊【AddEvent】按鈕,將顯示添加事件對(duì)話框,在此對(duì)話框上有一個(gè)名稱為Externalname的組合框,當(dāng)單擊其右邊向下的箭頭時(shí),將會(huì)看到列出了一些預(yù)先準(zhǔn)備好的事件。在Externalname下拉列表中選擇Click,保持默認(rèn)的Stock選項(xiàng)不變,然后單擊【OK】按鈕關(guān)閉AddEvent對(duì)話框,同理增加MouseMove
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第八章 存儲(chǔ)過程的創(chuàng)建和使用
- 專用ActiveX控件的設(shè)計(jì)與開發(fā).pdf
- 模板的創(chuàng)建和使用教案
- DWG文件離線瀏覽ActiveX控件研究.pdf
- 觸發(fā)器的創(chuàng)建和使用
- 創(chuàng)建和使用對(duì)話框框
- autocad腳本文件的創(chuàng)建和使用
- vfp數(shù)據(jù)庫的創(chuàng)建和使用
- Firefox中支持ActiveX控件運(yùn)行的研究與實(shí)現(xiàn).pdf
- 基于模糊測(cè)試的ActiveX控件漏洞自動(dòng)挖掘研究.pdf
- new第7章 視圖的創(chuàng)建和使用
- 一種智能控制算法的ActiveX控件的研究.pdf
- 基于模糊測(cè)試的activex控件 漏洞挖掘研究——碩士論文
- 基于模糊測(cè)試的activex控件 漏洞挖掘研究——碩士論文
- 一種遺傳算法通用ActiveX控件的開發(fā).pdf
- flexgrid控件的使用
- serialport控件的使用
- 基于模糊測(cè)試的activex控件 漏洞挖掘研究——碩士論文
- 基于ActiveX技術(shù)的蒙文編輯控件的設(shè)計(jì)和實(shí)現(xiàn).pdf
- 基于ActiveX的負(fù)荷優(yōu)化分配控件的開發(fā)與研究.pdf
評(píng)論
0/150
提交評(píng)論