2011-11-30 33 views
0

我添加了一個activex控件,以我的MFC項目,我不使用對話框編輯器添加了控制,我只是用MFC生成該控件的包裝類,並稱之爲「創造」的成員在包裝類編程方式創建控件,代碼或多或少是:如何使用MFC以編程方式更改ActiveX控件的屬性?

class CMyView 
{ 

CCalendar m_ctl; 
//other members..... 
} 
int CMyView::OnCreate 
{ 
    m_ctl.create("",WS_CHILD|WS_VISIBLE,this,CRect(50,50,100,100)); 
    //..... 
} 

但是我發現,包裝類提供沒有辦​​法,我改變控件的屬性,所以如果我想以編程方式更改控件的屬性,什麼我應該怎麼做?我可以通過包裝類來實現嗎?或者它可以通過編程完成?還是隻能通過對話框編輯器完成?謝謝。

+0

你想改變什麼屬性? –

+0

任何自定義或股票屬性,例如,如果日曆控件提供了「redSunday」屬性這可能會導致要顯示的星期日紅,我想開啓和關閉務實此屬性。的 – wangshuaijie

+0

可能重複[如何找到函數名,這是會被調用?](http://stackoverflow.com/questions/2107148/how-to-find-the-function-name-which-is-going -to待調用的) –

回答

0

是,包裝僅包括功能,如果您通過類嚮導創建它。

更改屬性,即變量,你可以在窗體或一個對話框實例化ActiveX和你將不得不修改屬性窗口的屬性值的能力。

如果你想這樣做上的運行,你可以右鍵點擊ActiveX對象,然後單擊添加變量。您會看到它也會爲該對象創建包裝類。該類將自動包含activex的getter和setter,在新生成的頭文件中可見。 如果您已經爲您的ActiveX創建了一個包裝類,它可能無法工作,請在新項目中嘗試使用它。之後,您可以將生成的.cpp和.h文件複製到您自己的項目中。

相關問題