VC++建立並呼叫Ocx控制元件
阿新 • • 發佈:2019-01-24
我們寫一個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資源中新增一個按鈕,雙擊按鈕新增相應的訊息處理函式
我們是不是得出了一個正確的結果那??