zoukankan      html  css  js  c++  java
  • 一步一步学习OC2007(三)--定制菜单命令

      在前面的两篇文章中,我们讲了如何定制联系人的在线状态,如何定制web 标签页,是不是对OC2007 的魔力有所感触了呢?其实,这只是一个引言,一道开胃菜而已,后面还有更多的大餐等着你呢?今天,我们就一起来谈谈,如何定制OC2007的菜单命令?

      OC2007中,有三种类型的菜单:

      工具栏菜单(The Tools menu)

      会话窗口的动作菜单(The Actions menu off the Conversation window)

      联系人窗口右键菜单(The right-click menu off the Contact List)

    在这些菜单列表中,都可以扩充我们的自定义菜单项。
      在OC2007 中,扩展菜单项,比扩展web 标签页,要容易一些,只要在注册表中定义清楚菜单项的各项属性就可以正常运行。如下代码所示:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Communicator\SessionManager\Apps\{27877e66-615c-4582-ab88-0cb2ca05d951}]
    "Name"="发送短信"
    "ExtensibleMenu"="ConversationWindowRightClick;MainWindowActions;MainWindowRightClick;ConversationWindowActions;ConversationWindowContextual"
    "Path"="E:\\群发邮件\\SendNote\\SendNote.exe %user-id% %contact-id%"
    "ApplicationInstallPath"="E:\\群发邮件\\SendNote\\SendNote.exe"
    "SessionType"=dword:00000000
    "ApplicationType"=dword:00000000


    各注册键说明如下:

    Name

    Type

    Data

    Name

    REG_SZ

    菜单命令名称

    ApplicationType

    DWORD

    应用程序类型:0:可执行文件;1:协议

    ApplicationInstallPath

    REG_SZ

    ApplicationType = 0 时,应用程序的完整路径

    Path

    REG_SZ

    应用程序的完整路径及其参数,缺省参数 %user-id% 和%contact-id%.

    SessionType

    DWORD

    会话类型。
    0:本地会话,应用程序只在本地启动。
    1:双方会话(缺省)
    2:多方会话

    ExtensibleMenu

    REG_SZ

    应用程序将会在哪些菜单上显示:
      MainWindowActions
      MainWindowRightClick
      ConversationWindowActions
      ConversationWindowContextual
      ConversationWindowRightClick


    缺省MainWindowRightClickConversationWindowContextual 

    多个菜单项目之间用分号(“;”)分隔。


    菜单说明

    键名称(Key) 说明
    MainWindowActions 主窗口菜单的[工具]工菜单下
    MainWindowRightClick OC主窗口联系人[右键]菜单
    ConversationWindowActions 对话窗口菜单的[操作]菜单下
    ConversationWindowContextual 对话窗口的[发送文件]菜单
    ConversationWindowRightClick 对话窗口,联系人列表[右键]菜单

    定义完成后,重启OC,就可以达到如图所示的效果了。


  • 相关阅读:
    React Native
    React Native
    MAC 虚拟机 IOS simulator 的快捷键操作
    在不打开 Xcode 的情况下独立启动 Xcode 自带的Simulator 模拟器
    {...this.props}是props所提供的语法糖,可以将父组件的所有属性复制给子组件
    XCODE archive打包历史版本查看
    Xcode的 build方式
    React Native之FlatList的介绍与使用实例
    react native 添加包含原生代码的库需要几个步骤:
    升级code11.3后遇到React Native启动报错的问题 getCurrentAppState:error 和 objectAtIndexedSubscript: 的解决方案
  • 原文地址:https://www.cnblogs.com/invinboy/p/1047176.html
Copyright © 2011-2022 走看看