精华内容
下载资源
问答
  • 今天三儿就来和你好好唠唠如何在公众号菜单栏放入emoji表情先来了解一下啥叫emoji知道emoji的表情的由来,那么我们该如何像三儿一样,将emoji表情添加菜单栏中呢?我们可以用两种方式将emoji表情放置在菜单栏中。...

    5dbaa3e2170c0e3185610f98be7394c4.png

    嘿,胖友们大家好呀,我是三儿

    你们的教学狂魔又来了!

    今天给你们带来的教程是

    花式菜单栏的设置

    不少胖友看到135编辑器的菜单栏后

    都在后台留言问三儿

    为啥你的菜单栏能放表情?

    今天三儿就来和你好好唠唠

    如何在公众号菜单栏放入emoji表情

    先来了解一下啥叫emoji

    f43a502d66371dea2fba19721d227e20.png

    64e9b9fcc0d6dbb5e0c9595f08108076.png

    知道emoji的表情的由来,那么我们该如何像三儿一样,将emoji表情添加到菜单栏中呢?

    我们可以用两种方式将emoji表情放置在菜单栏中。第一种就是使用我们的135编辑器啦!

    6bd7d0d8476d5f6774d98287d921caf3.png

    首先,我们需要在135编辑器中授权你的公众号,关于授权公众号,三儿已经讲过很多次啦,如果还是不太清楚如何授权公众号的胖友,可以点击下面的链接查看哦!

    >>>点我查看如何授权公众号

    公众号授权完成后,我们就可以进行下一步的操作啦。点击左上角的昵称,进入到个人中心界面。

    6a47dc6d175d9de5d4709e9d6fbecfdf.png

    进入至个人中心以后,我们点击左侧的『自定义菜单』进入到自定义菜单编辑界面。

    7a113fa3a6cd9364bfe7f6f068016574.png

    在这里,我们可以对自定义菜单进行编辑及同步的操作,我们首先点击右侧的『下载菜单』,将你公众号现有的菜单同步过来,就可以开始编辑了。

    9dd63232cb87ffcf8e6703cc6f0957a3.png

    点击『添加菜单』即可创建一个一级菜单,创建完成后,我们可以在右侧对他进行编辑,还可以点击这个一级菜单,创建二级菜单。

    307c4cbbefd86e0b1a36f5fa0234a999.png

    我们将准备好的emoji表情复制在右侧的编辑区内,然后输入菜单名称即可完成。

    5caae2b3db62afd93757266c4a9391ec.png

    这里需要注意的是:emoji表情复制粘贴后和显示是不一样的,所以胖友们不用担心哦!

    编辑完菜单后,点击同步菜单,即可完成菜单栏的设置。

    a2d9a2f0c6067eb51763e0b807e5397b.png

    96682de4ad80e979494b918d8b4e274e.png

    接下来我们说一说在微信后台如何设置吧,登录微信公众平台后,在左侧功能区选择『自定义菜单』,进入自定义菜单编辑界面。

    d0153e04f329240d138606e78e1022e4.png

    和上面提到的步骤一样,我们可以在这里对微信公众号的菜单进行设置。

    ecd1fa67f628114d4099f2017981ebab.png

    创建完菜单后,我们将准备好的emoji表情粘贴在右侧的编辑区内,然后输入菜单名称。

    a039a4fee64a4c4f5bf09eba411dfed3.png

    这里需要注意的是:我们插入emoji表情后,后台提示:“名称仅包含中英文、数字、特殊符号”的红色字提醒我们不能使用emoji表情,这要如何解决呢?

    我们只需要直接点击『保存并发布』按钮,即可正常保存哦!(他就是吓唬你的,别当真!)

    f7dcfc5f7e4db15d372326d4dc10881b.png

    除了emoji表情外,我们还可以在菜单栏添加字符表情哦!在135编辑器中,有超级多的字符表情可以选择。

    79189a757856cac0a8480e846495fc23.png

    在135编辑器编辑区上方找到特殊字符按钮,点开后就可以看到各种各样的特殊字符表情啦。点击字符即可插入至编辑器中。

    7b9a3af8f2923440bb2480f9e3d2cb04.png

    PS:我们可以按着ctrl键可以连续插入这些小字符哦!

    8b6cb5eff7d809dbbc1ffed48bf63b19.png

    三儿在这里准备了一些你可能会使用到的emoji表情,你可以直接在这里复制,然后粘贴到你的公众号菜单栏即可。

    ☀☁☔⛄⚡ ❄⛅ ⌚⌛⏰⏳♈♉♋♌♍♎♏♐♑♒ ☺ ©®™ℹ ☕ ⭕❌❎❗⁉‼❓❔❕〰➰❤ ✔ ㊙ ➕➖✖➗ ㊗

    Ps:安卓和苹果显示的效果会有所不同。

    emoji表情网站:http://www.fhdq.net/emoji.html

    fed14df355ef0095073ab298ff64de02.png

    以上就是本期的全部内容啦

    各位胖友们都学会了吗?

    更多的排版教程|涨粉技巧|运营指南,请关注公众号135编辑器(ID:editor135)

    展开全文
  • 一、如何在IE右键菜单中添加菜单项 如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接...

    一、如何在IE右键菜单中添加菜单项
        如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接
    或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接指向的文件。在本
    文中作者将介绍如何通过VB来实现这样的功能。
        要实现在IE右键菜单中添加菜单项的功能,要依次实现以下步骤:
        1、在注册表HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt项下建立一个
    新项,项的名称既出现在菜单中的标题,例如你想建立的菜单项标题为Add URL,则新建项的名称为
    HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/Add URL
        2、将新建项的默认值设定为一个URL地址,当用户点击菜单项后,IE就会调用URL指向的页面中的脚
    本,在目标页面的脚本中通过访问IE提供的external对象的menuArguments属性就可以访问IE中的页面中的
    各种对象,例如链接、图片、表单域、被选中的文本等。详细的帮助请参考MSDN中关于InternetExplore object
    的帮助,熟悉了Window对象才可以比较好的了解下面的脚本。
        对于如何实现自身的程序访问menuArguments的问题,我们可以仿效Netants的做法,首先建立一个
    OLE Automation对象,然后在脚本中调用该对象,并将页面信息传递对象处理。下面我们需要首先通过VB建立
    一个对象:
        打开VB,点击菜单: File | New ,在新建工程窗口中选择 ActiveX Dll 后按确定键建立一个ActiveX DLL
    工程。然后在工程列表窗口中将Class1的Name属性更改为NetAPI,然后在NetAPI的代码窗口中添加如下代码:
    Public Sub AddURL(URL As String, Info As String)
        MsgBox Info, vbOKOnly, URL
    End Sub
        保存文件,将工程文件保存成NetSamp.vbp。然后在菜单中选择 File | Make NetSamp.dll建立对象动态
    连接库。
        接下来是注册库,在Windows目录下找到Regsvr32.exe,然后将其拷贝到netsamp.dll所在目录下,将
    netsamp.dll的的图标拖到Regsvr32.exe上放开,这时Regsvr32.exe就会弹出对话框提示对象注册成功。
        打开UltraEdit(或者其它文本编辑器)将下面的脚本代码输入编辑器中:

    <script language="VBScript">

    Sub OnContextMenu()
     On Error Resume Next
     set srcEvent = external.menuArguments.event
     set EventElement = external.menuArguments.document.elementFromPoint(srcEvent.clientX, srcEvent.clientY)
     set objNetSamp=CreateObject("NetSamp.NetAPI")
           
            if srcEvent.type = "MenuExtAnchor" then
      set srcAnchor = EventElement
      do until TypeName(srcAnchor)="HTMLAnchorElement"
       set srcAnchor=srcAnchor.parentElement
      Loop
      Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
     elseif srcEvent.type="MenuExtImage" then
      if TypeName(EventElement)="HTMLAreaElement" then
       Call objNetSamp.AddUrl(EventElement.href,EventElement.Alt)
      else
       set srcImage = EventElement
       set srcAnchor = srcImage.parentElement
       do until TypeName(srcAnchor)="HTMLAnchorElement"
        set srcAnchor=srcAnchor.parentElement
        if TypeName(srcAnchor)="Nothing" then
         call objNetSamp.AddUrl(srcImage.href,srcImage.Alt)
         exit sub
        end if
       Loop
       Call objNetSamp.AddUrl(srcAnchor.href, srcImage.Alt)
      end if
     elseif srcEvent.type="MenuExtUnknown" then
      set srcAnchor = EventElement
      do until TypeName(srcAnchor)="HTMLAnchorElement"
       set srcAnchor=srcAnchor.parentElement
       if TypeName(srcAnchor)="Nothing" then
        Call objNetSamp.AddUrl(EventElement.href,EventElement.innerText)
        exit sub
       end if
      Loop
      Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
     end if
    end Sub
     
    call OnContextMenu()

    </script>
       
        将文件保存到c:/program files 下,文件名为 geturl.htm
        从上面的脚本可以看到,首先访问external.menuArguments属性,获得用户单击鼠标右键位置的对象,然
    后根据对象的不同获得它的URL,然后建立IEContextMenu.IEMenu1对象并调用该对象的AddURL方法。
        接下来是为右键菜单建立注册项,打开UltraEdit(或者其它文本编辑器)将下面的注册数据输入编辑器中
    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/&Get URL]
    @="c://program files//geturl.htm"
    "Contexts"=dword:00000022

        将文件以reg为后缀保存,然后在Windows资源管理器中双击该文件将注册项添加到注册表中,然后打开
    IE,右键点击一个连接或者图片,在弹出菜单中会出现一个Get URL项,点击该项,就会出现一个消息框显示
    点击的连接或者图片的URL地址
        下面再介绍一下上面注册项中Contexts项的作用,通过该项可以制定菜单项在右键点击IE中的什么对象时
    出现,它可以为以下值的“或”组合:
     对象  值
     缺省   0x1
     图片   0x2
     控件   0x4
     表单域   0x8
     选择文本  0x10
     锚点   0x20
        例如上面我们希望菜单项在用户点击图片或者超链接时出现,那么我们就将值设置为dword:00000022,既在
    点击图片 或者 锚点时出现菜单。一个锚点是页面中描述一个超链接的对象。如果不设置Contexts项,则菜单项
    会在点击任何对象时出现在右键菜单中。
        通过上面的程序介绍我们可以看到IE鼠标右键菜单的工作过程。前面讲了,Netants就是使用这样的方法通过
    在脚本中建立对象来实现调用NetAnts的,那么我们如果安装了NetAnts,就可以在程序中通过调用NetAnts对象来
    调用NetAnts。
        建立一个新工程,点击菜单 Projects | References 项,选择其中的 AntAPI 1.0 Type Library 项,如果没有
    点击Browser按钮,在文件列表框中选择网络蚂蚁目录下的NetAPI.dll后按打开键。在Form1中添加一个CommandButton
    按钮,在Command1_Click事件中添加如下代码:
        Dim ant As New ANTAPILib.AntAPIObj
       
        ant.AddUrl "http://www.applevb.com/z.zip", "", "http://www.applevb.com/"
        点击command1,然后NetAnts就会运行并且将http://www.applevb.com/z.zip添加到任务中。


    二、如何添加任务栏按钮
        基本上来说,添加任务栏按钮只需要修改注册表就可以实现。通过修改注册表来实现添加按钮的步骤如下:

    1、建立一个GUID。
    2、打开注册表编辑器,转到HKEY_LOCAL_MACHINE/Software/Microsoft/Internet Explorer/Extensions部分,
    在其下添加一个新的项,名称为 <Your GUID> ,Your GUID为你刚建立的GUID。
    3、在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称为HotIcon,该值定义当按钮具有热点时的图标,它的一般类型为:
    包含图标的文件全路径名,图标索引,例如:
    C:/PROGRA~1/KINGSOFT/XDICT/ieplugin.DLL,208
    4、在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称为Icon,该值定义当按钮的图标,它的一般类型为:
    图标文件全路径名,图标索引
    5、在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称为ButtonText,该值定义按钮的ToolTip文本。
    6、在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称为Default Visible,该值定义按钮是否可见,如果是,则该值设定
    为"Yes",否则设定为"No"。
    7、在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称为Clsid,将该值设定为{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}
    8、在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称为Exec,该值定义点击按钮后运行的文件的全路径名称,例如:
    c:/program files/samples/net.exe

    例如NetAnts的按钮注册表项的内容就是象下面这样:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/{57E91B47-F40A-11D1-B792-444553540000}]
    "CLSID"="{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}"
    "Default Visible"="Yes"
    "HotIcon"="C://PROGRA~1//NETANTS//NetAnts.exe,1001"
    "Icon"="C://PROGRA~1//NETANTS//NetAnts.exe,1000"
    "Exec"="C://PROGRA~1//NETANTS//NetAnts.exe"
    "ButtonText"="NetAnts"
    "MenuText"="&NetAnts"
    "MenuStatusBar"="Launch NetAnts"

        当点击NetAnts按钮时就会运行Netants。上面的注册表项中下面的两项:MenuText项添加一个菜单项到菜单
    的“工具”栏中,MenuStatusBar项定义当光标移动到添加的菜单栏上后显示在状态栏中提示文本。此外在注册表的
    HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>下还可以添加一个名称为
    MenuCustomize的字符串类型值,将该值设定为"Help"将使菜单项出现在“帮助”菜单栏中,否则出现在“工具”栏中。

        当然,我们不会满足于只是添加一个按钮,执行一个程序,我们希望能够获得当用户点击按钮时能够操控当前
    页面,在注册表的 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>
    下建立一个新的String类型的值,名称设定为一个htm文件的全路径名,同前面介绍的添加鼠标右键菜单一样,在点击
    按钮后IE会调用该文件,在文件中通过设定VBScript访问external对象的menuArguments属性就可以获得浏览器中的
    页面。例如我们将HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Extensions/<Your GUID>/VBScript
    的值设定为c:/program files/samp.htm,然后在c:/program files下建立一个名为Samp.htm的文件,在文件中输入以下
    脚本内容:
        <script language="VBScript">

        Set objNetSamp=CreateObject("IEContextMenu.IEMenu1")
        userURL=external.menuArguments.location.href
        Call objNetSamp.AddUrl(userURL,"")

        </script>
        打开IE浏览器,点击新建按钮,就会弹出对话框显示当前页面的URL。注意该项同前面设定的Exec项不能够同时使用。
        最后,对于按钮图标,IE需要两种尺寸的图标:20x20和16x16的,前者用于正常状态下的显示,后者用于在全屏幕
    下的显示,所以上面HotIcon和Icon指向的图标资源应该是三个图标的组合,这三个图标的规格如下:
        16x16 16-色 icon (必须)
        20x20 16-色 icon (可选)
        20x20 256-色 icon (必须)
        在设计图标时,256色图标应该使用Windows半色调调色板,而16色图标使用Windows 16色调色板。

    www.applevb.com

    展开全文
  • VB备忘录(11)菜单工具

    千次阅读 2013-04-08 16:47:14
    菜单编辑器 标题与名称 标题:用来显示在菜单上,给用户看和选择的。 ...名称:不显示在菜单上,在程序代码中用来操纵对应标题菜单的动作的。...一个窗体上有菜单 ,也有添加的一个容器(控件,工

    菜单编辑器


    标题与名称

    标题:用来显示在菜单上,给用户看和选择的。

    名称:不显示在菜单上,在程序代码中用来操纵对应标题菜单的动作的。




    “协调位置”

    允许选择菜单的 NegotiatePosition 属性。该属性决定是否及如何在容器窗体中显示菜单。

    这个MSDN说得太粗了,查了N久才明白是什么意思。

    一个窗体上有菜单 ,也有添加的一个容器(控件,工具板上OLE添加一个就是),OLE容器可以是另一个程序的插入,比如插入的是excel.

    在运行时,双击这个容器时就会调用excel,这个excel本身就有一个菜单B,就会和原来窗体上的窗体A,两个都会出现,那怎么排列呢?

    协调位置就起这个作用,要么无(原来菜单A消失,用Excel的菜单B来代替)

                                               要么就是左,中,右,即和菜单B混合在一起,在B的左,中,右。

    详细说法如下:

    设置一个值,决定当窗体的链接对象(由另一个应用程序创建和管理,然后再将它链接到 Visual Basic 应用程序中的对象)或

    内嵌对象(由其它应用程序创建然后嵌入到 Visual Basic 应用程序中的对象)活动而且显示菜单时,是否显示用户设置的最上层菜单控件。

    该列表有4个选项:

        0(None)——(缺省值)窗体的菜单不在菜单栏中显示。
        1(Left)——窗体的菜单在菜单栏的左边位置显示。
        2(Middle)——窗体的菜单在菜单栏的中间位置显示。
        3(Right)——窗体的菜单在菜单栏的右边位置显示。


        例如,在窗体上添加嵌入一个Excel工作表对象,若将窗体上的“文件”菜单“协调位置”选择为3(右边,

    则运行程序,双击激活Excel工作表对象时,用户设置的顶层“文件”菜单则显示在内嵌对象菜单的中间位置处,如下图:





    索引:只对于菜单数组有用。

               菜单数组的建立:把多个菜单项用相同的名称就建立了菜单数组,然后再设置它们的索引即可。

               菜单数组的必须:

                               必须同名,且必须添加唯一索引。

                              必须在同一级中,且连续放置,哪怕有分隔线,分隔线也必须作为菜单数组中的一个元素。

                             索引必须是升序的,可以不是连续索引但必须是升级(放置位置时必须连续)

                              



    菜单的两个注意点:

          1、坐标重算,有菜单时的坐标将以菜单条的左下角为坐标(0,0)。

           2、弹出菜单模式化,当弹出菜单时,popupmenu下面的语句挂起,直到菜单取消,或者菜单选择并执行对应功能后才执行下面的语句。


    复选菜单与级联菜单

    复选,设置其有checked

    级联,设置其有下级菜单(最多5级)



    弹出菜单

    首先要有一个特定菜单,然后用弹出事件来调用这个菜单 ,就是弹出菜单。

    object.PopupMenu   MenuName,Flag,X,Y,[BoldCommand]

    object   菜单宿主,在哪个对象上才弹出

    Flag      弹出菜单的样式,左、中、右(相对于X,Y)

    X,Y        弹出菜单 的位置

    BoldCommand     菜单名字(这个名字将以黑体出现)


    注意,弹出菜单可以在原主菜单 中进行隐藏,根据需要在弹出中进行调用。

               调用过程为: 首先将本隐藏的菜单



    菜单设计

    GetMenu  取得菜单句柄(如果一个窗体有菜单)

                     GetMenu  窗体句柄      例: GetMenu  form1.hwnd

                      原型:Private Declare Function GetMenu Lib "user32" Alias "GetMenu" (ByVal hwnd As Long) As Long

    GetSubMenu  取得弹出菜单句柄及在菜单中的位置(第一个条目为0,以下递增)。

                    GetSubMenu   菜单句柄,返回弹出菜单在菜单 中的位置    例: getsubmenu(MenuHwnd,0)

                    原型:Private Declare Function GetSubMenu Lib "user32" Alias "GetSubMenu" (ByVal hMenu As Long, ByVal nPos As Long) As Long

    SetMenuItemBitmaps  为特定菜单条目设置位图

               Private Declare Function SetMenuItemBitmaps Lib "user32" Alias "SetMenuItemBitmaps"

                      (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long,ByVal hBitmapUnchecked As Long,ByVal hBitmapChecked As Long) As Long

                  hMenu 菜单句柄

                  nPosition    想要设置菜单条目的标识符

                  wFags        根据上面选择MF_BYCOMMAND或MF_BYPOSITION

                 hBitmapUnchecked    撤消复选时的图形

                 hBitmapChecked         复选时显示的图形

               例:SetMenuItemBitmaps(子菜单句柄,0,MF_BYPOSITION,New.picture,OldPicture)

    美化菜单还有两个API

    GetMenuInfo

    SetMenuInfo






                

    ToolBar和CoolBar

    一般与imagelist相关联,以获取对应图标

    已经关联的imagelist,若想进行添加或删除图标,须断开关联,添加或删除后再进行关联。

    下拉菜单的工具栏,须在样式中设置为5-tbrdropdown,按钮也可分组设置为2-tbrButtonGroup

    分组按钮根据button.index用select case进行判断处理

    美化

    用Coolbar进行美化,相当于一个容器,把ToolBar放置Coolbar中进行相关设置。



    工具栏上的下拉菜单如何触发事件?

    选择ButtonMenuClick事件即可。用关键字key或标记进行判断是点击了那一个菜单。

    Private Sub Toolbar1_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
        If ButtonMenu.Key = "c" Then
            MsgBox ButtonMenu.Parent & "c"   '下拉菜单父名及本身的关键字
        End If
    End Sub


    ToolBar,CoolBar,  ImageList三个的配合使用(动画演示)




    状态栏

    StatusBar

    1、根据属性添加栏格(样式可以设置3种)

    2、内容,可以根据属性设置,也可代码设置

            Form1.StatusBar1.Panels(1).Text="作者:吹牛"



    展开全文
  • 一、如何在IE右键菜单中添加菜单项 如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接...


    一、如何在IE右键菜单中添加菜单项
    如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接
    或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接指向的文件。在本
    文中作者将介绍如何通过VB来实现这样的功能。
    要实现在IE右键菜单中添加菜单项的功能,要依次实现以下步骤:
    1、在注册表HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt项下建立一个
    新项,项的名称既出现在菜单中的标题,例如你想建立的菜单项标题为Add URL,则新建项的名称为
    HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Add URL
    2、将新建项的默认值设定为一个URL地址,当用户点击菜单项后,IE就会调用URL指向的页面中的脚
    本,在目标页面的脚本中通过访问IE提供的external对象的menuArguments属性就可以访问IE中的页面中的
    各种对象,例如链接、图片、表单域、被选中的文本等。详细的帮助请参考MSDN中关于InternetExplore object
    的帮助,熟悉了Window对象才可以比较好的了解下面的脚本。
    对于如何实现自身的程序访问menuArguments的问题,我们可以仿效Netants的做法,首先建立一个
    OLE Automation对象,然后在脚本中调用该对象,并将页面信息传递对象处理。下面我们需要首先通过VB建立
    一个对象:
    打开VB,点击菜单: File | New ,在新建工程窗口中选择 ActiveX Dll 后按确定键建立一个ActiveX DLL
    工程。然后在工程列表窗口中将Class1的Name属性更改为NetAPI,然后在NetAPI的代码窗口中添加如下代码:
    Public Sub AddURL(URL As String, Info As String)
    MsgBox Info, vbOKOnly, URL
    End Sub
    保存文件,将工程文件保存成NetSamp.vbp。然后在菜单中选择 File | Make NetSamp.dll建立对象动态
    连接库。
    接下来是注册库,在Windows目录下找到Regsvr32.exe,然后将其拷贝到netsamp.dll所在目录下,将
    netsamp.dll的的图标拖到Regsvr32.exe上放开,这时Regsvr32.exe就会弹出对话框提示对象注册成功。
    打开UltraEdit(或者其它文本编辑器)将下面的脚本代码输入编辑器中:

    <script language="VBScript">

    Sub OnContextMenu()
    On Error Resume Next
    set srcEvent = external.menuArguments.event
    set EventElement = external.menuArguments.document.elementFromPoint(srcEvent.clientX, srcEvent.clientY)
    set objNetSamp=CreateObject("NetSamp.NetAPI")

    if srcEvent.type = "MenuExtAnchor" then
    set srcAnchor = EventElement
    do until TypeName(srcAnchor)="HTMLAnchorElement"
    set srcAnchor=srcAnchor.parentElement
    Loop
    Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
    elseif srcEvent.type="MenuExtImage" then
    if TypeName(EventElement)="HTMLAreaElement" then
    Call objNetSamp.AddUrl(EventElement.href,EventElement.Alt)
    else
    set srcImage = EventElement
    set srcAnchor = srcImage.parentElement
    do until TypeName(srcAnchor)="HTMLAnchorElement"
    set srcAnchor=srcAnchor.parentElement
    if TypeName(srcAnchor)="Nothing" then
    call objNetSamp.AddUrl(srcImage.href,srcImage.Alt)
    exit sub
    end if
    Loop
    Call objNetSamp.AddUrl(srcAnchor.href, srcImage.Alt)
    end if
    elseif srcEvent.type="MenuExtUnknown" then
    set srcAnchor = EventElement
    do until TypeName(srcAnchor)="HTMLAnchorElement"
    set srcAnchor=srcAnchor.parentElement
    if TypeName(srcAnchor)="Nothing" then
    Call objNetSamp.AddUrl(EventElement.href,EventElement.innerText)
    exit sub
    end if
    Loop
    Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
    end if
    end Sub

    call OnContextMenu()

    </script>

    将文件保存到c:\program files 下,文件名为 geturl.htm
    从上面的脚本可以看到,首先访问external.menuArguments属性,获得用户单击鼠标右键位置的对象,然
    后根据对象的不同获得它的URL,然后建立IEContextMenu.IEMenu1对象并调用该对象的AddURL方法。
    接下来是为右键菜单建立注册项,打开UltraEdit(或者其它文本编辑器)将下面的注册数据输入编辑器中
    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\&Get URL]
    @="c:\\program files\\geturl.htm"
    "Contexts"=dword:00000022

    将文件以reg为后缀保存,然后在Windows资源管理器中双击该文件将注册项添加到注册表中,然后打开
    IE,右键点击一个连接或者图片,在弹出菜单中会出现一个Get URL项,点击该项,就会出现一个消息框显示
    点击的连接或者图片的URL地址
    下面再介绍一下上面注册项中Contexts项的作用,通过该项可以制定菜单项在右键点击IE中的什么对象时
    出现,它可以为以下值的“或”组合:
    对象 值
    缺省 0x1
    图片 0x2
    控件 0x4
    表单域 0x8
    选择文本 0x10
    锚点 0x20
    例如上面我们希望菜单项在用户点击图片或者超链接时出现,那么我们就将值设置为dword:00000022,既在
    点击图片 或者 锚点时出现菜单。一个锚点是页面中描述一个超链接的对象。如果不设置Contexts项,则菜单项
    会在点击任何对象时出现在右键菜单中。
    通过上面的程序介绍我们可以看到IE鼠标右键菜单的工作过程。前面讲了,Netants就是使用这样的方法通过
    在脚本中建立对象来实现调用NetAnts的,那么我们如果安装了NetAnts,就可以在程序中通过调用NetAnts对象来
    调用NetAnts。
    建立一个新工程,点击菜单 Projects | References 项,选择其中的 AntAPI 1.0 Type Library 项,如果没有
    点击Browser按钮,在文件列表框中选择网络蚂蚁目录下的NetAPI.dll后按打开键。在Form1中添加一个CommandButton
    按钮,在Command1_Click事件中添加如下代码:
    Dim ant As New ANTAPILib.AntAPIObj

    ant.AddUrl "http://www.applevb.com/z.zip", "", "http://www.applevb.com/"
    点击command1,然后NetAnts就会运行并且将http://www.applevb.com/z.zip添加到任务中。


    二、如何添加任务栏按钮
    基本上来说,添加任务栏按钮只需要修改注册表就可以实现。通过修改注册表来实现添加按钮的步骤如下:

    1、建立一个GUID。
    2、打开注册表编辑器,转到HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions部分,
    在其下添加一个新的项,名称为 <Your GUID> ,Your GUID为你刚建立的GUID。
    3、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称为HotIcon,该值定义当按钮具有热点时的图标,它的一般类型为:
    包含图标的文件全路径名,图标索引,例如:
    C:\PROGRA~1\KINGSOFT\XDICT\ieplugin.DLL,208
    4、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称为Icon,该值定义当按钮的图标,它的一般类型为:
    图标文件全路径名,图标索引
    5、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称为ButtonText,该值定义按钮的ToolTip文本。
    6、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称为Default Visible,该值定义按钮是否可见,如果是,则该值设定
    为"Yes",否则设定为"No"。
    7、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称为Clsid,将该值设定为{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}
    8、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称为Exec,该值定义点击按钮后运行的文件的全路径名称,例如:
    c:\program files\samples\net.exe

    例如NetAnts的按钮注册表项的内容就是象下面这样:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\{57E91B47-F40A-11D1-B792-444553540000}]
    "CLSID"="{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}"
    "Default Visible"="Yes"
    "HotIcon"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe,1001"
    "Icon"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe,1000"
    "Exec"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe"
    "ButtonText"="NetAnts"
    "MenuText"="&NetAnts"
    "MenuStatusBar"="Launch NetAnts"

    当点击NetAnts按钮时就会运行Netants。上面的注册表项中下面的两项:MenuText项添加一个菜单项到菜单
    的“工具”栏中,MenuStatusBar项定义当光标移动到添加的菜单栏上后显示在状态栏中提示文本。此外在注册表的
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>下还可以添加一个名称为
    MenuCustomize的字符串类型值,将该值设定为"Help"将使菜单项出现在“帮助”菜单栏中,否则出现在“工具”栏中。

    当然,我们不会满足于只是添加一个按钮,执行一个程序,我们希望能够获得当用户点击按钮时能够操控当前
    页面,在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
    下建立一个新的String类型的值,名称设定为一个htm文件的全路径名,同前面介绍的添加鼠标右键菜单一样,在点击
    按钮后IE会调用该文件,在文件中通过设定VBScript访问external对象的menuArguments属性就可以获得浏览器中的
    页面。例如我们将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>\VBScript
    的值设定为c:\program files\samp.htm,然后在c:\program files下建立一个名为Samp.htm的文件,在文件中输入以下
    脚本内容:
    <script language="VBScript">

    Set objNetSamp=CreateObject("IEContextMenu.IEMenu1")
    userURL=external.menuArguments.location.href
    Call objNetSamp.AddUrl(userURL,"")

    </script>
    打开IE浏览器,点击新建按钮,就会弹出对话框显示当前页面的URL。注意该项同前面设定的Exec项不能够同时使用。
    最后,对于按钮图标,IE需要两种尺寸的图标:20x20和16x16的,前者用于正常状态下的显示,后者用于在全屏幕
    下的显示,所以上面HotIcon和Icon指向的图标资源应该是三个图标的组合,这三个图标的规格如下:
    16x16 16-色 icon (必须)
    20x20 16-色 icon (可选)
    20x20 256-色 icon (必须)
    在设计图标时,256色图标应该使用Windows半色调调色板,而16色图标使用Windows 16色调色板。

    转载于:https://www.cnblogs.com/kangwang1988/archive/2011/02/26/1965816.html

    展开全文
  • 一、如何在IE右键菜单中添加菜单项 如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接或者图片上点击右键后在菜单中选择Down By Netants 就可以调用Netants下载该链接...
  • 4、VB 提供了丰富的控件选择,除了默认的工具箱面板上的控件外,还有很多控件没有罗列出来,我们可以通过“工程‖部件”命令或在工具箱面板上单击鼠标右键,在弹出的快捷菜单中选择“部件”命令,弹出如图十八的窗口...
  • vb控件开发 开发ocx

    热门讨论 2011-02-28 16:12:16
    vb的文本框等等控件的系统右键菜单里追加自己定义的菜单。 77 , 77.txt 在VB中用定时控件实现长定时操作 78 , 78.txt 在Visual Basic中,在GotFocus事件中快速选定文本 79 , 79.txt 在程序中注册和注销 OCX 控件 ...
  • VB编程资源大全

    2007-10-17 20:47:23
    appendmenu.zip 使用AppendMenu添加菜单,并且相应Click事件(6KB) 73,extfloodfill.zip 填充任意封闭区域(2KB) 74,hidetaskbar.zip 填充任意封闭区域(5KB) 75,iconextr.zip 从动态库, 执行...
  • 首先,我们需要创建一个“标准EXE”工程, 进入窗体界面后,点击菜单栏中的工程--部件,在弹出的对话框中向下拖动,选择并添加“Windows Internet controls”这个部件,如下图,让VB获得对Webbrowser控件的支持。...
  • 菜单栏中包含了Visual Basic几乎所有的命令,其菜单项分别如下: (1)“文件”菜单:打开和保存及关闭项目,也可用于生成可执行文件,以及过的工程项目列表。 (2)“编辑”菜单:用于撤消所做的操作,执行:“查找...
  • 微软 VB2010 源码包

    2013-05-22 02:21:18
    Menus:演示如何使用 Windows 窗体应用程序中的 MenuStrip 控件在运行时创建菜单,以及如何处理菜单事件 NotifyIcon:演示如何使用 NotifyIcon 控件及其关联的 ContextMenu 创建一个在通知区域中显示图标的程序 ...
  • 通过Microsoft Excel菜单栏中的【开始】选项卡中的【替换】功能?但这个功能只针对Microsoft Excel工作表中的单元格。有什么便捷的办法可以快速完成这项工作呢?在讲解这个问题之前,先熟悉一下如何给Mi...
  • VB.NET 入门经典 (第三版)

    热门讨论 2009-07-29 16:56:26
    8.2.4 为View菜单和工具编码 240 8.2.5 测试代码 242 8.3 关联菜单 245 8.4 小结 252 8.5 练习 253 第9章 调试和错误处理 254 9.1 主要错误类型 254 9.1.1 语法错误 255 9.1.2 执行错误 257 9.1.3 逻辑错误 257 ...
  • 6.3.1 如何在Button控件类型上添加图片并调整图片与 6.3.1 文字的对齐方式160 6.3.2 如何使房间的编号与房间类型匹配160 6.3.3 如何实现结账退房161 6.4 程序实现与代码161 6.4.1 酒店管理系统主界面窗体161 6.4.2 ...
  • 8.2.4 为View菜单和工具编码 240 8.2.5 测试代码 242 8.3 关联菜单 245 8.4 小结 252 8.5 练习 253 第9章 调试和错误处理 254 9.1 主要错误类型 254 9.1.1 语法错误 255 9.1.2 执行错误 257 9.1.3 逻辑错误 257 ...
  • 8.2.4 为View菜单和工具编码 240 8.2.5 测试代码 242 8.3 关联菜单 245 8.4 小结 252 8.5 练习 253 第9章 调试和错误处理 254 9.1 主要错误类型 254 9.1.1 语法错误 255 9.1.2 执行错误 257 9.1.3 逻辑错误 257 ...
  • C#如何弹出输入框

    2019-10-03 19:01:28
    然而,C#中没有直接弹出输入框的语句,MessageBox只能显示一段消息而不能输入。我们需要调用Microsoft.VisualBasic,...1、菜单栏,选择【项目】;然后在弹出的菜单中选择【添加引用】 2、弹出“添加引用”的窗...
  • │ │ ├─实例103 如何在图像中添加文字 │ │ ├─实例104 如何以图像填充文字线条 │ │ ├─实例105 如何实现图形绘制拉伸效果 │ │ ├─实例106 如何控制图像的显示方式 │ │ ├─实例107 如何控制图像的显示...
  • 陈伟视频3~5集总结

    千次阅读 2020-02-04 09:55:15
    菜单、工具及设置、工具箱、调试窗口(立即窗口、本地窗口、监视窗口)、窗体布局、属性窗口、代码编辑窗口、项目管理器、窗体设计窗口 主要讲解了窗口代码设计,如控件的添加、保存工程、如何在其他系统上运行此...
  • 实例282 为无标题窗体添加菜单 实例283 创建个性化弹出式菜单 9.3 高级菜单应用 实例284 调用系统菜单 实例285 调用其他应用程序的菜单 实例286 创建右键菜单用于粘贴 实例287 制作带菜单的记事本 实例288...
  • 实例282 为无标题窗体添加菜单 实例283 创建个性化弹出式菜单 9.3 高级菜单应用 实例284 调用系统菜单 实例285 调用其他应用程序的菜单 实例286 创建右键菜单用于粘贴 实例287 制作带菜单的记事本 实例288...
  • 资源文件的使用

    2015-09-06 10:03:00
    注意,如果你想在资源文件中添加图标...在 外接程序 菜单下,点击 外接程序管理器 ,弹出 外接程序管理器 对话框,在 可用外接程序 栏目 列 ,选择 VB 6资源编辑器 ,然后在下方的加载行为中分别选中 在启动中加载...
  • C#源码大集合 01(共3卷)

    千次下载 热门讨论 2008-07-18 10:43:46
    │ ├─实例3 如何使用菜单控件 │ │ ├─实例4 如何使用工具控件 │ │ ├─实例5 如何使用状态控件 │ │ ├─实例6 如何使用托盘控件 │ │ ├─实例7 如何使用标签页控件 │ │ ├─实例8 ...

空空如也

空空如也

1 2 3
收藏数 60
精华内容 24
关键字:

vb如何添加菜单栏