1. 程式人生 > >VC++建立並呼叫Ocx控制元件

VC++建立並呼叫Ocx控制元件



我們寫一個Ocx控制元件加法的例子!!!
首先開啟VC,我們建立一個MFC ActiveX ControlWizard工程

切換到類檢視

選中_DActiveX,右擊選擇Add Method 彈出如下對話方塊,填入相應的引數

再次開啟類檢視,會發現_DActiveX接口裡多出了Add介面,
且CActiveXCtrl類裡面發現函式Add(short num1,short num2)雙擊填充函式體

編譯出現如下圖資訊,說明我們的控制元件無誤,且註冊成功

我們在建立一個基於對話方塊的MFC工程,建立好後右鍵對話方塊空白處
選擇Insert ActtiveX Control 選中自己建立的控制元件點選OK 編譯執行
發現出現一個白底色黑色橢圓,你會不會很奇怪那?? 自己沒建立為什麼會出現橢圓呢??

那是因為在CActiveCtrl類中的OnDraw函式中系統畫出來的橢圓,將裡面的註釋去掉即可

註釋掉後從新編譯,如果出錯,是因為呼叫控制元件的程式仍在開啟,需將呼叫控制元件的工程關閉,編譯後從新新增即可

再次執行,橢圓消失了.
現在ocx控制元件也載入到程式了,那我們雜麼呼叫裡面的方法(Add)呢??

選擇"View"-->ClassWizard或(Ctrl + W) 選擇Automation如下圖:

在選擇From a Type Library然後找到控制元件工程 Debug下的ActiveX.tlb檔案後,如下圖:

此時我們已經在MFC中把ActiveX類新增進去了!!

為了驗證結果,我們在MFC資源中新增一個按鈕,雙擊按鈕新增相應的訊息處理函式


我們是不是得出了一個正確的結果那??