在本節中以上節中的ATL控件做為對象講解一下如何調試和使用ActiveX控件。
由於控件並不能單獨運行,所以你必須利用另一個程序來裝載控件並進行調試,VC中提供了ActiveX容器供使用,在工程/設置菜單(project/setting)中選擇Debug頁並選擇ActiveX Container。
然後開始調試,進入Container時VC會提示Container中是沒有調試代碼的錯誤,不用理會並繼續。
進入Container後首先要裝載你所需要調試的控件,選擇菜單Edit/Insert OLE Control...,在彈出的對話框中選擇你需要插入的控件。
如果Container成功創建了控件在屏幕中就會顯示出控件,根據上節的內容我們可以看到控件中顯示了一串字符,接下來我們需要測試一下控件所提供的方法是否能夠正確運行。請選擇菜單Edit/Invoke Methods...,在彈出的對話框上選擇你要使用的方法,但你選擇了方法後,對話框上的參數輸入區會顯示輸入參數的列表,你輸入參數後按下Invoke按鈕就可以執行。
在調試時你可以如同調試其他程序一樣在代碼中使用TRACE宏,也可以設置斷點。
其實你在插入控件時會看見其他在系統中已經注冊的控件,如果有興趣可以自己試試加載幾個看看效果。
如果要在VC的工程中使用已經存在的ActiveX控件,最簡單的方法就是利用VC的插入功能,在菜單中選擇Project/Add To Project/Component and Control(在不同版本的VC中可能菜單位置不同),然後選擇插入的控件,VC會為你生成這個控件的定義文件,當然和你最開始編寫的會完全不一樣,但是沒有關系。你會在定義文件看見這個控件所實現的方法和屬性,這些都可以讓你通過函數的方式進行調用。(所以在使用控件時如果沒有該控件的說明是很難使用的)
還有一種方法就是在對話框中插入一個控件。如果該控件的定義文件沒有生成VC也可以幫助你生成。
在對話框中的控件是不需要手工創建的,但是如果你希望在其他地方創建窗口就需要調用控件的創建函數,其實這個函數很簡單,和