繁体   English   中英

如何创建自定义组件并将其添加到基于对话框的应用程序(MFC)?

[英]How to create and add a custom made component to a Dialog based app (MFC)?

我想制作一个定制的组件(折线图),用于其他应用程序。

我不知道两件事:

  1. 我应该在哪里使用(在组件类中!)绘制方法,如FillRect

    还是PolyLine? 在OnPaint处理程序中,我应该在MESSAGE MAP中定义并映射它?

    它(OnPaint处理程序)从应用程序对话框的OnPaint处理程序中调用

    或从哪里来?

  2. 如何将组件制作完成后连接到测试应用程序

    例如是基于对话? 我应该在哪里实例化该组件? 从一个

    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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM