当前位置: 首页 > wzjs >正文

做淘宝banner的网站做网站建设优化的公司排名

做淘宝banner的网站,做网站建设优化的公司排名,天津做网站外包公司,上海外贸建站商城Eclipse 插件开发 3 菜单栏 1 增加菜单2 指定位置3 点击事件4 二级菜单 (静态)5 二级菜单 (动态) 位置locationURI备注菜单栏menu:org.eclipse.ui.main.menu添加到传统菜单工具栏toolbar:org.eclipse.ui.main.toolbar添加到工具栏 1 增加菜单 <?xml version"1.0&quo…

Eclipse 插件开发 3 菜单栏

  • 1 增加菜单
  • 2 指定位置
  • 3 点击事件
  • 4 二级菜单 (静态)
  • 5 二级菜单 (动态)

位置locationURI备注
菜单栏menu:org.eclipse.ui.main.menu添加到传统菜单
工具栏toolbar:org.eclipse.ui.main.toolbar添加到工具栏

1 增加菜单

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin><extension point="org.eclipse.ui.menus"><menuContribution locationURI="menu:org.eclipse.ui.main.menu?after=additions"><menu id="com.xu.learn.menus.sampleMenu" label="一级菜单"><command commandId="com.xu.learn.commands.sampleCommand" id="com.xu.learn.menus.sampleCommand"></command></menu></menuContribution></extension></plugin>

在这里插入图片描述

2 指定位置

XML字段含义
extension.menuContributionlocationURI菜单栏位置 menu:org.eclipse.ui.main.menu?after=additions,如Window就是window
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin><extension point="org.eclipse.ui.menus"><menuContribution locationURI="menu:org.eclipse.ui.main.menu?after=window"><menu id="com.xu.learn.menus.sampleMenu" label="一级菜单"><command commandId="com.xu.learn.commands.sampleCommand" id="com.xu.learn.menus.sampleCommand"></command></menu></menuContribution></extension></plugin>

在这里插入图片描述

3 点击事件

XML字段含义
extension.handlercommandId处理id
menu.commandcommandId处理id
menu.commandclass为处理类的路径
package com.xu.learn.handlers;import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.handlers.HandlerUtil;
import org.eclipse.jface.dialogs.MessageDialog;public class SampleHandler extends AbstractHandler {@Overridepublic Object execute(ExecutionEvent event) throws ExecutionException {IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);MessageDialog.openInformation(window.getShell(),"Learn","点击菜单弹框");return null;}
}
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin><extension point="org.eclipse.ui.menus"><menuContribution locationURI="menu:org.eclipse.ui.main.menu?after=additions"><menu id="com.xu.learn.menus.sampleMenu" label="一级菜单"><command commandId="com.xu.learn.commands.sampleCommand" id="com.xu.learn.menus.sampleCommand"></command></menu></menuContribution></extension><extension point="org.eclipse.ui.handlers"><handler class="com.xu.learn.handlers.SampleHandler" commandId="com.xu.learn.commands.sampleCommand"></handler></extension></plugin>

在这里插入图片描述

4 二级菜单 (静态)

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin><!-- 添加顶部菜单 --><extension point="org.eclipse.ui.menus"><menuContribution locationURI="menu:org.eclipse.ui.main.menu"><!-- 添加顶部 一级菜单 --><menu id="com.xu.test.menus.menu1" label="菜单1"><!-- 一级菜单 下增加 二级菜单1 --><command commandId="com.xu.test.commands.submenu1Command" icon="icons/sample.png" id="com.xu.test.menus.submenu1" label="二级菜单1"></command><!-- 一级菜单 下增加 二级菜单2 --><command commandId="com.xu.test.commands.submenu2Command" icon="icons/sample.png" id="com.xu.test.menus.submenu2" label="二级菜单2"></command><!-- 一级菜单 下增加 二级菜单3 --><command commandId="com.xu.test.commands.submenu3Command" icon="icons/sample.png" id="com.xu.test.menus.submenu3" label="二级菜单3"></command><!-- 一级菜单 下增加 二级菜单3 --><menu id="com.xu.test.menus.submenu4" label="二级菜单4"><!-- 二级级菜单 下增加 三级菜单1 --><command commandId="com.xu.test.commands.submenu4_1Command" id="com.xu.test.menus.submenu4_1" label="三级菜单1"></command></menu></menu></menuContribution></extension><!-- 菜单点击命令 --><extension point="org.eclipse.ui.commands"><!-- 二级菜单1 命令 --><command defaultHandler="com.xu.handlers.HelloHandler" id="com.xu.test.commands.submenu1Command" name="二级菜单1命令"></command><!-- 二级菜单2 命令 --><command defaultHandler="com.xu.handlers.SampleHandler" id="com.xu.test.commands.submenu2Command" name="二级菜单2命令"></command><!-- 二级菜单3 命令 --><command defaultHandler="com.xu.handlers.HelloHandler" id="com.xu.test.commands.submen3Command" name="二级菜单3命令"></command><!-- 三级菜单1 命令 --><command defaultHandler="com.xu.handlers.HelloHandler" id="com.xu.test.commands.submenu4_1Command" name="三级菜单1命令"></command></extension></plugin>

在这里插入图片描述

5 二级菜单 (动态)

方式场景实现
继承 CompoundContributionItem + dynamic动态生成菜单项推荐
反复修改 plugin.xml麻烦、不灵活plugin.xml 是静态配置
package com.xu.dynamic;import java.util.ArrayList;
import java.util.List;import org.eclipse.jface.action.ContributionItem;
import org.eclipse.jface.action.IContributionItem;
import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.ui.actions.CompoundContributionItem;public class DynamicSubMenu extends CompoundContributionItem {@Overrideprotected IContributionItem[] getContributionItems() {List<IContributionItem> items = new ArrayList<>();// 示例:根据某些条件动态生成7个子项for (int i = 1; i <= 7; i++) {final int index = i;items.add(new ContributionItem() {@Overridepublic void fill(Menu menu, int indexInMenu) {MenuItem menuItem = new MenuItem(menu, org.eclipse.swt.SWT.PUSH, indexInMenu);menuItem.setText("动态菜单项 " + index);menuItem.addListener(org.eclipse.swt.SWT.Selection, e -> {System.out.println("你点击了:动态菜单项 " + index);// 你可以在这里调用命令或其他逻辑});}});}return items.toArray(new IContributionItem[0]);}
}
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin><!-- 添加顶部菜单 --><extension point="org.eclipse.ui.menus"><menuContribution locationURI="menu:org.eclipse.ui.main.menu"><!-- 添加顶部 一级菜单 --><menu id="com.xu.test.menus.menu1" label="菜单1"><!-- 一级菜单 下增加 二级菜单1 --><command commandId="com.xu.test.commands.submenu1Command" icon="icons/sample.png" id="com.xu.test.menus.submenu1" label="二级菜单1"></command><!-- 一级菜单 下增加 二级菜单2 --><command commandId="com.xu.test.commands.submenu2Command" icon="icons/sample.png" id="com.xu.test.menus.submenu2" label="二级菜单2"></command><!-- 一级菜单 下增加 二级菜单3 --><command commandId="com.xu.test.commands.submenu3Command" icon="icons/sample.png" id="com.xu.test.menus.submenu3" label="二级菜单3"></command><!-- 一级菜单 下增加 二级菜单3 --><menu id="com.xu.test.menus.submenu4" label="二级菜单4"><!-- 动态生成三级菜单 --><dynamic class="com.xu.dynamic.DynamicSubMenu" id="com.xu.test.menus.dynamicSubmenu"/></menu></menu></menuContribution></extension><!-- 菜单点击命令 --><extension point="org.eclipse.ui.commands"><!-- 二级菜单1 命令 --><command defaultHandler="com.xu.view.handlers.HelloHandler" id="com.xu.test.commands.submenu1Command" name="二级菜单1命令"></command><!-- 二级菜单2 命令 --><command defaultHandler="com.xu.view.handlers.SampleHandler" id="com.xu.test.commands.submenu2Command" name="二级菜单2命令"></command><!-- 二级菜单3 命令 --><command defaultHandler="com.xu.view.handlers.HelloHandler" id="com.xu.test.commands.submen3Command" name="二级菜单3命令"></command><!-- 三级菜单1 命令 --><command defaultHandler="com.xu.view.handlers.HelloHandler" id="com.xu.test.commands.submenu4_1Command" name="三级菜单1命令"></command></extension></plugin>

在这里插入图片描述

http://www.dtcms.com/wzjs/71904.html

相关文章:

  • 点餐小程序源码下载武汉建站优化厂家
  • 做网站挣钱么钦州seo
  • 将网站发布到微信小程序怎么做网上卖产品怎么推广
  • 如何做代购网站设计windows永久禁止更新
  • 做公益网站的说明山东疫情最新情况
  • 西安网站seo技术厂家自己建网站详细流程
  • 招远做网站公司最火的网络销售平台
  • 廊坊模板网站建设常州百度搜索优化
  • 免费网站建设软件seo优
  • 商务网站建设sz886网络的推广
  • 汉化主题做网站效果图网站注册域名
  • 建设一个购物网站需要什么意思北京网站优化快速排名
  • 青苹果乐园免费观看日本湖南企业seo优化推荐
  • 通化网站开发怎么在百度上发布信息广告
  • 上海突发事件seo关键词排名系统
  • 网站建设 中企动力公司百度的推广广告
  • 如何查找各种网站发布平台有哪些
  • 东莞网站开发云盘网页版登录
  • 88建网站湖人排名最新
  • 广州建网站腾虎上海抖音推广
  • 自己做的网站如何让qq登录电商运营培训正规平台
  • 自助做网站市场推广计划方案
  • wordpress 套餐上海seo招聘
  • 网站名字怎样做版权企业网站的搜索引擎推广与优化
  • 网站备案验证码错误河南seo技术教程
  • 手机网站建设平台合同石家庄头条今日头条新闻
  • 物流网站源代码搜狗推广开户
  • 全屏网站怎么做求职seo推荐
  • 自己的网站做一些诱惑百度指数有哪些功能
  • 做网站代理拉不到人武汉百度关键词推广