CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

关于ActiveX引入FormView结构技术

楼主singlewolf17(健)2005-04-21 15:36:13 在 VC/MFC / 基础类 提问

引入FormView技术    
   
    下面介绍在制作ActiveX控件时引入FormView技术,   制作步骤如下:    
   
    1.在上面工作的基础上,在ResourceView页中新增一对话框资源,命名为IDD_HELLOFORMVIEW,可以在对话框上放自己的控件;    
    2.设置对话框资源IDD_HELLODIALOG属性的Style页为Style:Child、Border:  
  Dialog   Frame、Title   Bar:unchecked;设置More   Style页为Visible:  
  checked;Control:   checked;设置Extended   Styles页为Static   Edge:  
  checked;    
    3.为对话框资源IDD_HELLOFORMVIEW创建新类CHelloFormView,从CFormView继承;    
    4.在HelloFormView.h中将CHelloFormView的构造函数CHelloFormView()和析构函数   virtual   ~CHelloFormView()从protected改为public;    
    5.在HelloFormView.h中对CHelloFormView类加入public   friend   classCHelloCtrl;    
    6.确认在HelloCtrl.h中已加入语句#include   “HelloFormView.h",为CHelloCtrl类添加   成员变量CHelloFormView   m_helloFormView;    
    7.修改CHelloCtrl::OnCreate函数,在此创建m_helloFormView;    
    8.修改DoHello代码,在此显示FormView;    
   
  int   CHelloCtrl::OnCreate(LPCREATESTRUCT   lpCreateStruct)    
  {  
  if   (COleControl::OnCreate(lpCreateStruct)   ==   -1)  
  return   -1;  
   
  //   创建FormView  
  m_helloFormView.Create(NULL,NULL,  
  AFX_WS_DEFAULT_VIEW,CRect(0,   0,   0,   0),  
  this,   AFX_IDW_PANE_FIRST,   NULL);  
   
  return   0;  
  }  
   
  void   CHelloCtrl::OnDraw(CDC*   pdc,    
  const   CRect&   rcBounds,   const   CRect&   rcInvalid)  
  {  
  //   定位Hello对话框  
  m_helloFormView.MoveWindow(rcBounds,TRUE);  
  }  
   
   
  编译后用ActiveX   Control   Test   Container测试,引入ocx时出错。  
  请问各位这是什么问题?该怎么解决? 问题点数:100、回复次数:8Top

1 楼sinall()回复于 2005-04-21 15:54:52 得分 100

这个做法我用过,没什么问题。  
  http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2615/Top

2 楼singlewolf17(健)回复于 2005-04-21 15:58:49 得分 0

编译后用ActiveX     Control     Test     Container测试,关闭Container时出错。      
  请问各位这是什么问题?该怎么解决?Top

3 楼singlewolf17(健)回复于 2005-04-21 16:00:41 得分 0

Formview   啊   不是Dialog   急救啊Top

4 楼sinall()回复于 2005-04-21 16:01:39 得分 0

void   CHelloCtrl::OnDraw(CDC*   pdc,    
  const   CRect&   rcBounds,   const   CRect&   rcInvalid)  
  {  
  //   定位Hello对话框  
  //m_helloFormView.MoveWindow(rcBounds,TRUE);   //先把这句屏蔽掉试试。  
  }  
   
  如果还是不行,那么应该是创建就出错了  
  m_helloFormView.Create(NULL,NULL,  
  AFX_WS_DEFAULT_VIEW,CRect(0,   0,   0,   0),  
  this,   AFX_IDW_PANE_FIRST,   NULL);Top

5 楼sinall()回复于 2005-04-21 16:11:42 得分 0

刚刚试了一下,没任何问题,  
  如果你需要  
  告诉我E-mail地址Top

6 楼singlewolf17(健)回复于 2005-04-21 16:45:09 得分 0

好的   谢谢   y_jian_17@sohu.comTop

7 楼sinall()回复于 2005-04-21 16:58:00 得分 0

已发送,请查收。Top

8 楼singlewolf17(健)回复于 2005-04-21 17:07:40 得分 0

谢谢!准备结帖Top

相关问题

  • 如何正确的引入CHARFORMAT2结构?
  • C#中这样引入activex控件啊?
  • b/s结构activex高手请进!100分!
  • 请问在我自己写的activex中,可以再引入activex吗?!
  • 用类型库引入一个ActiveX控件类,如果响应事件?
  • 在ActiveX 控件中是否能够实现DOCUMENT/VIEW结构?
  • 向ActiveX控件传递自定义结构该如何做呢?
  • ActiveX中能导出自定义的数据结构吗?
  • 请问如何将数据库Table中的数据引入ActiveX页中的F1Book控件中
  • 谁给一个用vv7.0的mfc开发的在ActiveX控件中引入窗体的例子

关键词

  • 函数
  • activex
  • 技术
  • null
  • helloformview
  • chelloformview
  • chelloctrl
  • 对话框
  • formview
  • 引入

得分解答快速导航

  • 帖主:singlewolf17
  • sinall

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo