MFC ActiveX 控件:添加另一自定义属性页

mfc 专栏收录该内容
26 篇文章 0 订阅

在微软MSDN上有详细过程,但还有一步要注意:对话框的属性中,Border改为 none; Style改为Child;

 

微软帮助文档如下:

插入新的"属性页模板到项目

  1. 打开控件的项目,则在项目工作区中打开资源视图。

  2. 右击在"资源视图打开快捷菜单并单击 添加资源

  3. 展开 对话框 节点,然后选择 IDD_OLE_PROPPAGE_SMALL

  4. 单击 New 将资源添加到此项目。

  5. 选择新的属性页刷新模板属性窗口。

  6. 输入 ID 属性的新值。 此示例使用 IDD_PROPPAGE_NEWPAGE

  7. 在工具栏上单击**“保存”**。

相关新的模板类。

  1. 打开类视图。

  2. 右击类视图打开快捷菜单。

  3. 从快捷菜单中单击“添加”,然后单击“添加类”。

    这会打开 添加类 对话框。

  4. 双击 MFC 类 模板。

  5. 类名 框在 MFC 类向导中,键入项目名称。新的对话框类。(在此示例中,即 CAddtlPropPage。)

  6. 如果要更改文件的名称,单击 更改。 输入名称。实现和头文件或接受默认名称。

  7. 基类 框中,选择 COlePropertyPage

  8. 对话框 ID 框中,选择 IDD_PROPPAGE_NEWPAGE

  9. 单击以创建类的 完成

若要允许设置为此新的属性页中的用户控件访问,请对控件的 ID 属性页的节进行以下更改 (位于控件实现文件):

BEGIN_PROPPAGEIDS(CMyAxUICtrl, 2)
   PROPPAGEID(CMyAxUIPropPage::guid)
   PROPPAGEID(CAddtlPropPage::guid)
END_PROPPAGEIDS(CMyAxUICtrl)

注意必须增加 BEGIN_PROPPAGEIDS 宏 (计数) 属性页从 1 至 2. 中的第二个参数。

还必须修改控件实现文件 (.cpp) 中的文件标题 (。H) 新的属性页的类文件。

下一步是创建已为新的"属性页"将提供一类型名称和标题的两个字符串资源。

添加新的字符串资源。属性页

  1. 打开控件的项目,请打开资源视图。

  2. 双击 字符串表 文件夹然后双击要将字符串中现有的字符串表资源。

    这将打开 Windows 中的字符串表。

  3. 选择空白行在字符串表结尾时键入文本、标题,字符串:例如,添加“附加属性页”。

    这显示打开 标题ID 对话框的 String Properties 页。 标题 框包含您键入的字符串。

  4. ID 框中,选中或键入字符串的 ID。 完成后,按 Enter。

    此示例适用于新的属性页的类型名使用 IDS_SAMPLE_ADDPAGE

  5. 重复使用 IDS_SAMPLE_ADDPPG_CAPTION 的步骤 3 和 4“ID 和其他属性页的”标题的。

  6. 在新的"属性页类的 .cpp 文件 (在此示例中,CAddtlPropPage) 修改 CAddtlPropPage::CAddtlPropPageFactory::UpdateRegistry,以便 IDS_SAMPLE_ADDPAGE 将 AfxOleRegisterPropertyPageClass,如下面的示例所示:

BOOL CAddtlPropPage::CAddtlPropPageFactory::UpdateRegistry(BOOL bRegister)
{
   if (bRegister)
      return AfxOleRegisterPropertyPageClass(AfxGetInstanceHandle(),
         m_clsid, IDS_SAMPLE_ADDPAGE);
   else 
      return AfxOleUnregisterClass(m_clsid, NULL);
}

7. 如下修改 CAddtlPropPage 构造函数,以便 IDS_SAMPLE_ADDPPG_CAPTION 传递给 COlePropertyPage 构造函数,例如:

CAddtlPropPage::CAddtlPropPage() :
   COlePropertyPage(IDD, IDS_SAMPLE_ADDPPG_CAPTION)
{

}

 

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

<p> 需要学习Windows系统YOLOv4的同学请前往《Windows版YOLOv4目标检测实战:原理与源码解析》, </p> <p> 课程链接 https://edu.csdn.net/course/detail/29865 </p> <h3> <span style="color:#3598db;">【为什么要学习这门课】</span> </h3> <p> <span>Linux</span>创始人<span>Linus Torvalds</span>有句名言:<span>Talk is cheap. Show me the code. </span><strong><span style="color:#ba372a;">冗谈不够,放码过来!</span></strong> </p> <p> <span> </span>代码阅读是从基础到提高的必由之路。尤其对深度学习,许多框架隐藏了神经网络底层的实现,只能在上层调包使用,对其内部原理很难认识清晰,不利于进步优化和创新。 </p> <p> YOLOv4是最近推出的基于深度学习的端到端实时目标检测方法。 </p> <p> YOLOv4的实现darknet是使用C语言开发的轻型开源深度学习框架,依赖少,可移植性好,可以作为很好的代码阅读案例,让我们深入探究其实现原理。 </p> <h3> <span style="color:#3598db;">【课程内容与收获】</span> </h3> <p> 本课程将解析YOLOv4的实现原理和源码,具体内容包括: </p> <p> - YOLOv4目标检测原理<br /> - 神经网络及darknet的C语言实现,尤其是反向传播的梯度求解和误差计算<br /> - 代码阅读工具及方法<br /> - 深度学习计算的利器:BLAS和GEMM<br /> - GPU的CUDA编程方法及在darknet的应用<br /> - YOLOv4的程序流程 </p> <p> - YOLOv4各层及关键技术的源码解析 </p> <p> 本课程将提供注释后的darknet的源码程序文件。 </p> <h3> <strong><span style="color:#3598db;">【相关课程】</span></strong> </h3> <p> 除本课程《YOLOv4目标检测:原理与源码解析》外,本人推出了有关YOLOv4目标检测的系列课程,包括: </p> <p> 《YOLOv4目标检测实战:训练自己的数据集》 </p> <p> 《YOLOv4-tiny目标检测实战:训练自己的数据集》 </p> <p> 《YOLOv4目标检测实战:人脸口罩佩戴检测》<br /> 《YOLOv4目标检测实战:中国交通标志识别》 </p> <p> 建议先学习门YOLOv4实战课程,对YOLOv4的使用方法了解以后再学习本课程。 </p> <h3> <span style="color:#3598db;">【YOLOv4网络模型架构图】</span> </h3> <p> 下图由白勇老师绘制 </p> <p> <img alt="" src="https://img-bss.csdnimg.cn/202006291526195469.jpg" /> </p> <p>   </p> <p> <img alt="" src="https://img-bss.csdnimg.cn/202007011518185782.jpg" /> </p>
©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值