[英]How to create and add a custom made component to a Dialog based app (MFC)?
我想制作一個定制的組件(折線圖),用於其他應用程序。
我不知道兩件事:
我應該在哪里使用(在組件類中!)繪制方法,如FillRect
還是PolyLine? 在OnPaint處理程序中,我應該在MESSAGE MAP中定義並映射它? 將
它(OnPaint處理程序)從應用程序對話框的OnPaint處理程序中調用
或從哪里來?
如何將組件制作完成后連接到測試應用程序
例如是基於對話? 我應該在哪里實例化該組件? 從一個
MyAppDialog.cpp的OnCreate方法?
我幾天前開始在MFC編碼,我對它很困惑。
提前致謝,
干杯。
繪制控件的處理方式與它不是控件的情況完全相同。 鑒於您正在使用MFC,(至少通常)意味着您在View類中進行繪圖' OnDraw
(MFC通常在內部處理OnPaint,因此您很少觸摸它)。
在主機應用程序中插入生成的ActiveX控件將像插入任何其他ActiveX控件一樣完成。 假設您正在Visual Studio中進行開發,通常可以通過打開對話框,右鍵單擊對話框內部,然后在彈出的菜單中單擊“插入ActiveX控件...”來實現。 從列表中選擇您的控件,它將為控件和代碼生成一個包裝類,以根據需要創建該類的對象。 從對話框代碼的角度來看,它就在那里,你可以像任何其他控件一樣使用它。
要在MFC中創建新組件,必須從窗口類(CWND)創建一個類,
之后,您可以使用組件和方法的MessageMap,也可以覆蓋CWND :: OnDraw方法來繪制所需的東西。 在此之前,我建議您查看設備上下文
http://msdn.microsoft.com/en-us/library/azz5wt61(VS.80).aspx
祝好運的朋友。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.