實驗八 activex 控件的創(chuàng)建和使用_第1頁
已閱讀1頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、實驗八ActiveX控件的創(chuàng)建和使用一實驗目的1掌握基于MFC創(chuàng)建ActiveX控件的過程2掌握ActiveX控件的屬性和事件的編程方法3了解非標準形狀控件的編程方法二實驗要求8.1創(chuàng)建一個控件,在控件上顯示一串字符,設置屬性,可以對顯示的字符進行設置和修改;另一方面,設置兩個事件,當鼠標移動時,將鼠標的位置告知,當鼠標左鍵壓下時,產(chǎn)生另一個事件,告知鼠標位置。編寫測試程序,在對話窗口上使用編寫的控件,可以輸入在控件上待顯示的字符,當鼠

2、標在控件上移動時,在對話框上顯示其坐標。當鼠標左鍵壓下時,產(chǎn)生另一個事件,告知鼠標位置。8.2創(chuàng)建一橢圓形控件(或其它形狀),雙擊后彈出顏色設置對話窗口,選擇其中顏色,將控件顏色設置為選擇的顏色。編寫測試程序,在測試程序中測試控件的功能。三實驗過程實驗1步驟:(1)首先利用MFCActiveXControlWizard生成一個ActiveX控件程序的框架。在VC開發(fā)環(huán)境中,選擇【FileNew】菜單項,在打開的對話框上選擇Project

3、s選項卡,并在列表框中MFCActiveXControlWizard工程命名為:Example1。然后單擊【OK】進入向?qū)У牡谝徊?,直接單擊【Finish】按鈕保持所有默認設置不變。說明:其中CExample1App類是從CWinApp派生的,所以可以把該類看作是一個應用程序類。CExample1Ctrl類是從CWnd類派生的,對控件窗口進行的操作都將在CExample1Ctrl類中完成。在CExample1Ctrl類的頭文件中提供了消

4、息映射、調(diào)度映射和事件映射。調(diào)度映射是為了讓外部應用程序可以方便地訪問控件的屬性和方法,而事件映射讓控件可以向包含它的容器發(fā)送事件通知。Example1PropPage類派生于CDialog類,是用來顯示Example1控件的屬性頁的,該類和一個ID為IDD_PROPPAGE_EXAMPLE1的對話框資源相對應。在上述介紹的三個類的上面還有兩項內(nèi)容:_DExample1和_DExample1Events,它們都于是我們可以加載特定的Ac

5、tiveX控件了,方法是選擇【EditNewControl...】菜單項,這時將打開如下圖所示的對話框:選中我們創(chuàng)建的Example1控件,單擊對話框上的【OK】按鈕關(guān)閉對話框,這時,在ActiveXControlTestContainer應用程序中就加載了Example1控件。這時該控件的代碼都是MFC自動生成的。(3)控件功能的實現(xiàn)。首先將CExample1Ctrl類中OnDraw函數(shù)中自動生成的兩行代碼注釋起來,它們分別用來填充控

6、件的背景和繪制橢圓。然后為控件添加自定義屬性,選擇ClassWizard對話框上的Automation選項卡,然后單擊【AddProperty】按鈕,將彈出屬性對話框。在Externalname中填寫屬性名稱為“SetText”類型選擇為“CString”變量名被自動的設置為m_setText,而且ClassWizard為該控件增加了一個通知函數(shù):OnSetTextChanged,當在外部修改屬性時,這個函數(shù)將被調(diào)用。在添加屬性對話框上

7、還有三個單選按鈕,保持默認選擇的Membervariable當選擇該選項后,ClassWizard會為該屬性生成一個成員變量和一個通知函數(shù)。在CExample1Ctrl類的構(gòu)造函數(shù)中對m_setText進行初始化,加入代碼:m_setText=“你好!“在通知函數(shù)OnSetTextChanged中加入代碼如下:Invalidate()使窗口發(fā)生重繪調(diào)用OnDraw函數(shù),在OnDraw函數(shù)中加入代碼如下:pdcTextOut(00m_se

8、tText)(4)為控件增加標準事件。選擇ClassWizard對話框上的ActiveXEvents選項卡,然后單擊【AddEvent】按鈕,將顯示添加事件對話框,在此對話框上有一個名稱為Externalname的組合框,當單擊其右邊向下的箭頭時,將會看到列出了一些預先準備好的事件。在Externalname下拉列表中選擇Click,保持默認的Stock選項不變,然后單擊【OK】按鈕關(guān)閉AddEvent對話框,同理增加MouseMove

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論