2007-5-16工作日志

 
今天解决的问题:
1, IE插件中的ToolBar上“添加”一个Combobox,并正确处理焦点和输入
     这里说的“添加”并不是真的添加,而是利用MoveWindow将Combobox移动
        到ToolBar上相应的位置。
     要实现这样的功能,必须完成以下步骤:
   <1>: Band类实现IInputObject的三个方法, UIActivateIO, HasFocusIO,                             TranslateAcceleratorIO.
            UIActivateIO是activate控件元素。这里我们SetFocus相应的控件,
             不是Combobox而是它内部的edit控件,下面会说如何获得edit的handle.
             HasFocusIO 询问band成员是否具有焦点,遍历所有的元素,与GetFocus比较、
             TranslateAcceleratorIO 处理相应的系统快捷键,这个由超类化Combobox的类
             处理即可。
      <2> 获得Combobox内部edit空间的handle
         COMBOBOXINFO cbi;
         cbi.cbSize = sizeof(COMBOBOXINFO);
         GetComboBoxInfo(m_hCombo, &cbi);
         m_hEdit = cbi.hwndItem;
2, ToolBar实现ToolTip功能
必须完成如下步骤:
1,创建ToolBar时指定 TBSTYLE_TOOLTIPS
2, 在ToolBar的parent窗口中添加一个消息处理,处理TTN_GETDISPINFO
代码如下:
     case TTN_GETDISPINFO:
          LPTOOLTIPTEXT lpttt;
          lpttt = (LPTOOLTIPTEXT)lParam;
          UINT_PTR idButton = lpttt->hdr.idFrom;//Button 的command id.
          switch(idButton)
          {
          case IDM_SEARCH:
               lpttt->lpszText = TEXT(" 最常用的书签" );
               break;
   }
3,就这么简单!
3, Info Band中打开一个网页(host a web control),正确处理输入,包括backspace
   必须完成如下步骤:
1,Band对象实现IOleControlSite, IOleClientSite
    最简单的实现即可。
2,将web控件“停靠”到band对象,即实现了上述两个接口的band对象
    注意不是控件的parent窗口,这个可以任意
即先获得web控件的IOleObject接口,然后调用:
m_pIOleObject->SetClientSite(this);//this 指针就是band对象的指针,它动态
转换成IOleObject*类型,因为我们的band已经实现了这个接口。 
3,Band对象的对应窗口,设置为web控件的parent窗口
即:实现GetWindow. (IOleWindow的方法)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值