安徽新华电脑专修学院_安徽电脑培训_安徽电脑培训学校_合肥电脑培训

當前位置:首頁 > 網站舊欄目 > 學習園地 > 設計軟件教程 > 最近的Eclipse plugin開發總結

最近的Eclipse plugin開發總結
2010-01-14 23:06:57  作者:  來源:

List控件沒有提供addDblClickListener方法,如果要處理雙擊事件,則需要這樣處理:

 

java 代碼

 

 
  1. list.addListener(SWT.MouseDoubleClick, new Listener() {   
  2.    public void handleEvent(Event event) {   
  3.     System.out.println(event);   
  4.    }});  

在WizardPage中要實現想到的前進和后退需要這么使用
((WizardDialog)getWizard().getContainer()).showPage(getNextPage());
而不能簡單的通過wizardPage的setVisibile()來設置可見和不可見

ed.getCommandStack().execute(command);和command.execute()是有區別的,前者會告訴editor當前的EditorInput已經發生改變,而后者不會

在保存emf模型的時候,遍歷每一個emf節點,都會執行org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveElementID該方法
保存屬性執行org.eclipse.emf.ecore.xmi.impl.XMLSaveImpl.saveDataTypeSingle(EObject o, EStructuralFeature f)該方法

如何定義擴展點
我們可以給插件定義擴展來增加插件的靈活性,滿足用戶的定制要求.
每一個擴展點都必須包括一個唯一標識符用來標識當前定義的擴展點,在使用擴展點的時候的擴展點id就是插件全限定+這個唯一標識符,而且每一個擴展點都會關聯一個schema文件,該文件用來告訴用戶如何使用該擴展點,不過該schema文件不是必須的,但是他可以為我們定義的擴展點進行驗證并自動生成相關的文檔信息,schema文件以.exsd的格式存放在插件所在目錄的schema文件夾下
圖片文件之類的,在定義擴展點屬性的時候,必須將其kind屬性設置為resource,而如果是java類的話,則需要將kind屬性設置為java

Display.syncExec() and asyncExec()方法的區別,前者是同步執行,這里的"步"可以理解是管道,也就是在一個管道中挨個執行線程(當前線程+指定線程),后者是異步執行,也就是它可以另起一個管道來執行指定的線程.syncExec在指定的線程執行完畢之后才返回,asyncExec無論指定的線程是否結束都返回到當前的線程

獲得IWorkBenchWindow的方法:
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();

得到pluginId要這么用:
CommonPlugin.getDefault().getBundle().getSymbolicName()

根據pluginId得到一個bundle
Bundle bundle = Platform.getBundle(pluginId);

通過調用Display.getCurrent()來知道當前線程是否是UI線程。如果Display.getCurrent()返回為空,表示當前不是UI線程。只有一個UI線程,其他的都是非UI線程

Job的join方法表示當前job執行完成之后再執行job后面的代碼,否則這個順序是無序的

在非UI線程中調用UI線程會拋出SWTException異常,要解決這個問題需要使用Display.syncExec()或者asyncExec()方法,還有一種解決方法就是用時UIJob,不過必須復寫runInUIThread()方法,將邏輯代碼放在該方法中執行而不是run()方法中

打開對話框查找多個制定類型的文件可以參考org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.openExtJarFileDialog()方法

java.lang.VerifyError: (xxx) Wrong return type in function問題的解決
一般出現這種錯誤是由于java complier和jre的版本不一致導致的,一般在升級的時候很容易碰到,比如有時候指定在java 1.4下編譯,但是實際上我們的程序在java5.0下跑
還有一種可能就是升級之后,原來的類已經從一個包里面移動到另外一個包下面了,而加載classpath的時候存在兩份

跟蹤鍵盤事件的時候, 在該方法下加斷點void org.eclipse.swt.widgets.TypedListener.handleEvent(Event e)

對于顯示tooltip提示信息需要在void org.eclipse.swt.widgets.TypedListener.handleEvent(Event e)中監聽SWT.MouseHover類型的事件

aptana js editor中的提示信息的獲得通過com.aptana.ide.editors.unified.hover.LexemeTextHover.getHoverInfo(ITextViewer textViewer, IRegion hoverRegion)
取得

在aptana中對文檔的分割使用到Lexme的概念, 而所有的提示, 自動提示功能都是建立在Lexme的基礎上的

aptana加載內容提示配置文件在com.aptana.ide.editor.js.JSLanguageEnvironment中實現

向日志中添加一條出錯信息:
IStatus status = new Status(IStatus.ERROR,
  "org.eclipse.jface", //$NON-NLS-1$
  0, message, new Exception());
Policy.getLog().log(status);

IWorkspace ws = ResourcesPlugin.getWorkspace();用來取得workspace對象


安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 苏州探测器清洗_烟感探头清洗_感烟探测器维修清洗_火灾探测器清洗报价/价格_进口国产消防设备清洗_江苏智淼探测器清洗厂家- | 河间市天一密封材料有限公司-回转窑密封设备,除尘过滤袋 | 吉林市发布(雾凇融媒)官网 | 桥梁支座更换_桥梁检测车租赁_高空作业车出租_支座更换_伸缩缝安装_隧道防水_养护加固_维修_出租_衡水庆兴桥梁养护工程有限公司 桥梁养护|桥梁维修加固|隧道裂缝修补|支座更换|管道堵水气囊|衡水众拓路桥养护有限公司 | 辽宁大卯新能源供热设备制造有限公司官方网站,大卯新能源,大卯新能源供热设备 | 饮料瓶-白酒瓶-绿色玻璃瓶-山东玻璃瓶厂家-枣庄市金泰玻璃有限公司 | 葫芦岛装修公司,兴城装修家装公司,葫芦岛鑫昕装饰 | 无轴螺旋输送机_双无轴螺旋输送机_垃圾,污泥无轴螺旋输送机-新乡市大汉振动机械有限公司 | 青岛网站建设_网站制作_品牌设计_网站设计_圭谷设计 | 扫路车_洗扫车_清扫车_道路清扫车_天锦洗扫车-程力专用汽车股份有限公司 | 免费建站_自助建站_网站建设_企业建站_中小企业建网站_免费网站模板-牵牛建站 | 临沂网站建设,临沂网站制作,临沂网络公司,临沂小程序开发,临沂网站设计,沂水网站建设,沂南网站建设,蒙阴网站建设,平邑网站建设,费县网站建设,兰陵网站建设,郯城网站建设,临沭网站建设,莒南网站建设,兰山网络公司 | 西安测试仪-西安电压测试仪-西安电流测试仪-西安热油汽水测试仪-西安阻抗测试仪-西安时间速度测试仪-西安电力设备厂家-西安中洲电力设备有限公司 | 水上游乐设备 - 郑州亿浪水上乐园设备有限公司 | 中空吹塑-PETG吹塑加工-吹塑玩具-东莞市鹏美塑胶五金有限公司 | 烧腊培训,广东有实力的烧腊培训[免费试吃],广式烧鸭培训-烧鹅培训-学烧腊选广州嘉政 | 淄博润裕机械设备有限公司-搅拌器,搅拌桨叶,反应釜,机械密封,化工搅拌 | 自走式缠绕机_上海德目包装设备厂家_在线式缠绕机_缠绕膜打包机 自装卸(挂桶)车|钩臂垃圾车|压缩垃圾车|密封自卸车|环卫垃圾车|餐厨车泔水车湖北程力专用车厂家 | 三亚酒吧KTV会所 专业舞台音响灯光 智能影音 会议音响工程 首选海南东演音响公司 | 盐城市宏展环保材料有限公司-官网-滤袋,过滤袋,液体过滤袋,袋式过滤器,无纺布过滤袋,废液过滤袋 盐城市城镇化建设投资集团有限公司[盐城国资企业、盐城国资集团、盐城文化旅游、盐城基础设施、盐城土地开发、盐城粮食收储] | 天然气车船展、氢能装备展、氢燃料汽车展、核电装备展、国防信息化装备展---北京企发展览服务有限公司 | 饲料车_散装饲料车_畜禽运输车_散装饲料运输车_饲料车厂家_铝合金运猪车-程力专用汽车股份有限公司 | 上海同田生物技术有限公司-逆流色谱供应商和应用技术服务商 | 微型直流减速电机-直流永磁电机-直流永磁电机厂家-微型直流减速电机定制-东莞市鑫辉传动科技有限公司 - 鑫辉传动科技 | 饮料制造机械设备-罐体设备报价-CIP清洗设备-饮料生产线交钥匙工程-上海哲苏轻工机械有限公司 | 烘干机_回转窑_破碎机_制砂机_洗砂机_球磨机-瑞光金属制品 | 通风方式信号控制箱_人防呼叫按钮_人防设备厂家–西安鼎兴自控工程有限公司 | 强德防盗门-防盗门厂家-中国防盗门十大品牌-强德门业 - 浙江臻品工贸有限公司 | 深圳危化品经营许可证_危险化学品经营许可证办理 | 同步分流马达_液压泵维修_派克多路阀-济南富诚液压设备有限公司 通用变频器|国产变频器|深圳变频器厂家-深圳市英捷思技术有限公司 | 深圳市新纶超净科技有限公司,防静电/洁净室行业系统解决方案提供商 | 斜管填料_斜板填料_纤维球_果壳活性炭_立体网状填料_纤维球厂家-巩义市德科净水材料有限公司 | 激光切割机_激光切割机价格-山东大威激光科技有限公司 | 球磨机配件_烘干机配件_回转窑配件_球磨机小齿轮_球磨机大齿轮-巩义市兴农机械制造公司 | 舟舟宝贝少儿培训网-少儿艺术培训-少儿舞蹈培训-少儿英语培训 | 主轴-电主轴-高速电机-高速电主轴厂家|瑞德沃斯品牌 | 绿化工程-绿化养护-园林设计-东莞市泉桦园林绿化有限公司 | 潍坊博发动力设备有限公司| 武汉防雷检测_防雷工程设计施工_防雷设备材料_湖北普天科技有限公司 | 呼吸家官网|肺功能检测仪生产厂家|国产肺功能仪知名品牌|肺功能检测仪|肺功能测试仪|婴幼儿肺功能仪|弥散残气肺功能仪|肺功能测试系统|广州红象医疗科技有限公司|便携式肺功能仪|大肺功能仪|呼吸康复一体机|儿童肺功能仪|肺活量计|医用简易肺功能仪|呼吸康复系统|肺功能仪|弥散肺功能仪(大肺)|便携式肺功能检测仪|肺康复|呼吸肌力测定肺功能仪|肺功能测定仪|呼吸神经肌肉刺激仪|便携式肺功能 | 西克制冷官网│制冷机组冷风机冷库设备厂家-西克制冷(无锡)有限公司_西克制冷(无锡)有限公司 |