如何在VS2010中添加ActiveX控件及使用方法
1个回答
2017-10-30
展开全部
方法1:
1、首先在在项目上面右击添加类,如下图所示:
image
2、点击添加ActiveX控件中的MFC类
image
3、找到需要添加的ActiveX类。
image
4、点击完成即可。
image
5、此时转到资源视图,打开如下视图。可能工具箱中并没有我们刚刚添加的控件。这时,需要我们收到载入。
image
6、右击工具箱中的选择项按钮:
image
7、在选择工具箱项中找到刚刚添加的组件即可。(注:ActiveX组件它是建立在OLE于COM技术基础之上的技术)
image
8、右击项目,使用类向导,添加变量以及事件映射。
image
方法2:
上面介绍的方法过于臃肿,其实还有简单的方法。
1、直接右击,选择添加ActiveX控件即可。
image
2、然后找到自己需要添加的控件名称
image
3、完成后,右击,可以为控件添加变量以及添加事件处理程序与Dlg类建立联系。
imageimage
注:选择自定义的控件。即ActiveX控件会自动添加对应的类。这样就可以使用了。不过,这种方法需要重复使用。
还有就是这种方法与上面方法添加的类,有点小区别,但建立的类,无论是.h文件还是.CPP文件内容差不多。
对比以下两张图,分别是对同一个控件添加成员变量以及事件处理程序。
对于第一张图,它会在Cdemo4Dlg类中生成定义好的成员变量,以及控件本身生成的类。
注:类的生成要看控件的种类,自定义的控件,比如说ActiveX控件它会自动生成一个单独的类,而系统本身自带的控件并不会生成一个单独的类。
对于第二张图,它是针对Cdemo4Dlg类中生成的方法。
1: BEGIN_EVENTSINK_MAP(Cdemo4Dlg, CDialogEx) //表示时间映射的开始
2: ON_EVENT(Cdemo4Dlg, IDC_MONTHVIEW1, 4, Cdemo4Dlg::SelChangeMonthview1, VTS_DATE VTS_DATE VTS_PBOOL)
3: END_EVENTSINK_MAP() //表示时间映射的结束
4:
5:
6: void Cdemo4Dlg::SelChangeMonthview1(DATE StartDate, DATE EndDate, BOOL* Cancel)
7: {
8: // TODO: 在此处添加消息处理程序代码
9: //int iYear = m_Month.get_Year(); //此m_Month为我们定义的成员变量。
10:
11: }
image
1、首先在在项目上面右击添加类,如下图所示:
image
2、点击添加ActiveX控件中的MFC类
image
3、找到需要添加的ActiveX类。
image
4、点击完成即可。
image
5、此时转到资源视图,打开如下视图。可能工具箱中并没有我们刚刚添加的控件。这时,需要我们收到载入。
image
6、右击工具箱中的选择项按钮:
image
7、在选择工具箱项中找到刚刚添加的组件即可。(注:ActiveX组件它是建立在OLE于COM技术基础之上的技术)
image
8、右击项目,使用类向导,添加变量以及事件映射。
image
方法2:
上面介绍的方法过于臃肿,其实还有简单的方法。
1、直接右击,选择添加ActiveX控件即可。
image
2、然后找到自己需要添加的控件名称
image
3、完成后,右击,可以为控件添加变量以及添加事件处理程序与Dlg类建立联系。
imageimage
注:选择自定义的控件。即ActiveX控件会自动添加对应的类。这样就可以使用了。不过,这种方法需要重复使用。
还有就是这种方法与上面方法添加的类,有点小区别,但建立的类,无论是.h文件还是.CPP文件内容差不多。
对比以下两张图,分别是对同一个控件添加成员变量以及事件处理程序。
对于第一张图,它会在Cdemo4Dlg类中生成定义好的成员变量,以及控件本身生成的类。
注:类的生成要看控件的种类,自定义的控件,比如说ActiveX控件它会自动生成一个单独的类,而系统本身自带的控件并不会生成一个单独的类。
对于第二张图,它是针对Cdemo4Dlg类中生成的方法。
1: BEGIN_EVENTSINK_MAP(Cdemo4Dlg, CDialogEx) //表示时间映射的开始
2: ON_EVENT(Cdemo4Dlg, IDC_MONTHVIEW1, 4, Cdemo4Dlg::SelChangeMonthview1, VTS_DATE VTS_DATE VTS_PBOOL)
3: END_EVENTSINK_MAP() //表示时间映射的结束
4:
5:
6: void Cdemo4Dlg::SelChangeMonthview1(DATE StartDate, DATE EndDate, BOOL* Cancel)
7: {
8: // TODO: 在此处添加消息处理程序代码
9: //int iYear = m_Month.get_Year(); //此m_Month为我们定义的成员变量。
10:
11: }
image
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询