花開(kāi)有時(shí)

          花開(kāi)有時(shí),花落有時(shí),來(lái)有時(shí),去有時(shí)。不撕扯,只關(guān)切;不紀(jì)念,只牽掛;不感動(dòng),只明白;不尋找,只記得。
          隨筆 - 24, 文章 - 0, 評(píng)論 - 54, 引用 - 0
          數(shù)據(jù)加載中……

          2007年12月23日

          在導(dǎo)出RCP時(shí)把插件打包成文件夾的形式而不是jar包

               摘要: 在使用RCP做項(xiàng)目時(shí),最后的發(fā)布一般是用.product文件的Export wizard導(dǎo)出Product,但是導(dǎo)出的插件默認(rèn)情況下都是以jar包的形式導(dǎo)出,而有的時(shí)候會(huì)有在項(xiàng)目中使用的第三方包不允許我們?cè)趯?dǎo)出的產(chǎn)品中進(jìn)行發(fā)布,但可以允許用戶自己下載后進(jìn)行添加,因?yàn)閖ar包的形式是把所有依賴的jar包也一起打包成jar,因此jar的形式就不能達(dá)到我們發(fā)布的要求。在試過(guò)了很多方法后,我們覺(jué)得如果導(dǎo)出的形式改成文件夾的形式是可行的。因?yàn)橐话銇?lái)說(shuō),發(fā)布的插件都會(huì)有一個(gè)lib文件夾存放依賴的jar,如果我們?cè)赽uild.properties文件中設(shè)置不把依賴的lib下jar包發(fā)布,并且以文件夾的形式發(fā)布插件,讓用戶自己下載添加到lib文件夾里,這樣就ok了。  閱讀全文

          posted @ 2008-12-02 11:18 花開(kāi)有時(shí) 閱讀(3013) | 評(píng)論 (3)編輯 收藏

          JME研究群(42691979)建立!

              對(duì)JME感興趣的同志請(qǐng)加入JME研究群(群號(hào):42691979),大家一起研究,共同進(jìn)步!

          posted @ 2008-04-29 14:13 花開(kāi)有時(shí) 閱讀(1540) | 評(píng)論 (2)編輯 收藏

          定義Eclipse Editor應(yīng)該要注意的問(wèn)題

          1.Editor必須要設(shè)置icon,否則會(huì)出異常。
          2.必須要重寫(xiě)EditorPart#init(IEditorSite site, IEditorInput input)方法,內(nèi)容一般為
          this.setSite(site);
          this.setInput(input);
          this.setPartName(input.getName());
          否則會(huì)出異常。 3.自定義的EditorInput的以下方法的返回值不能為null:getName()、getToolTipText(),否則會(huì)出異常。

          posted @ 2008-02-05 13:41 花開(kāi)有時(shí) 閱讀(464) | 評(píng)論 (0)編輯 收藏

          如何自定義SWT Table的每一個(gè)Cell的height and width

          demonstration code:
          Display display = new Display();
          Shell shell = new Shell(display);
          shell.setBounds(10,10,200,250);
          final Table table = new Table(shell, SWT.NONE);
          table.setBounds(10,10,150,200);
          table.setLinesVisible(true);
          for (int i = 0; i < 5; i++) {
          new TableItem(table, SWT.NONE).setText("item " + i);
          }
          table.addListener(SWT.MeasureItem, new Listener() { 
          public void handleEvent(Event event) { 
          int clientWidth = table.getClientArea().width;
          event.height = event.gc.getFontMetrics().getHeight() * 2; 
          event.width = clientWidth * 2; 
           } 
          });  
          shell.open();
          while (!shell.isDisposed()) {
          if (!display.readAndDispatch()) display.sleep();
          }
          display.dispose();
          

          說(shuō)明:黑體部分是關(guān)鍵,主要是要為table添加一個(gè)監(jiān)聽(tīng)器并要用到SWT.MeasureItem屬性,如果是在TableView下則需要調(diào)用TableView#getTable()方法獲得Table再添加監(jiān)聽(tīng)器。
          還需要注意的是:
          1)這個(gè)特性可能只在Eclipse3.2以上的版本中才有。
          2)不能對(duì)單行(Item)進(jìn)行height的設(shè)置。
          3)如果設(shè)置了width,則column的width以它為準(zhǔn)。
          參考文章:[[1]]http://www.eclipse.org/articles/Article-CustomDrawingTableAndTreeItems/customDraw.htm#_tb10D

          posted @ 2008-02-03 16:26 花開(kāi)有時(shí) 閱讀(2406) | 評(píng)論 (1)編輯 收藏

          RCP開(kāi)發(fā)--對(duì)PropertyView定義自己的排序器

          在RCP開(kāi)發(fā)中難免要使用要PropertyView對(duì)自己的一些Object進(jìn)行屬性描述,但是有時(shí)候需要對(duì)PropertyView (org.eclipse.ui.views.properties.PropertySheetPage)
          進(jìn)行自己的排序(PropertySheetPage有定義好的排序器),經(jīng)研究發(fā)現(xiàn)PropertySheetPage并沒(méi)有提供方法可以設(shè)置排序器,怎么辦呢?
          方法是實(shí)現(xiàn)一個(gè)自己的PropertySheetPage,因?yàn)樵赑ropertySheetPage中實(shí)際上是提供了一個(gè)設(shè)置排序器的方法的,但是這個(gè)方法是受保護(hù)的(protected),
          并不是公開(kāi)的(public),所以我們需要實(shí)現(xiàn)自己的PropertySheetPage,而且還需要實(shí)現(xiàn)自己的排序器PropertySheetSorter。
          1.實(shí)現(xiàn)自己的PropertySheetSorter:需要繼承PropertySheetSorter類并實(shí)現(xiàn)sort(IPropertySheetEntry[] entries)方法,具體可以看父類的實(shí)現(xiàn)。
          2.實(shí)現(xiàn)自己的PropertySheetPage:需要繼承PropertySheetPage類并重寫(xiě)createControl(Composite parent)方法,
          在方法中首先調(diào)用setSorter(自己定義的PropertySheetSorter類的對(duì)象),然后調(diào)用super.createControl(parent)方法。

          posted @ 2008-02-03 15:52 花開(kāi)有時(shí) 閱讀(675) | 評(píng)論 (0)編輯 收藏

          定義自己的CellEditor

               摘要: 定義自己的CellEditor其實(shí)不難,完整的實(shí)例可以看Eclipse的TextCellEditor與ComboBoxCellEditor(原理都差不多,但推薦看CmboboxCellEditor,它的實(shí)現(xiàn)簡(jiǎn)單些)  閱讀全文

          posted @ 2008-02-03 14:51 花開(kāi)有時(shí) 閱讀(3749) | 評(píng)論 (1)編輯 收藏

          工作隨想

            工作差不多有一個(gè)月了,突然發(fā)現(xiàn)周圍的同事都不是名牌大學(xué)順利畢業(yè)擁有學(xué)位的高材生就是在讀的名牌大學(xué)實(shí)習(xí)生。今天發(fā)現(xiàn)我旁邊的一位是保送到清華的南大學(xué)生,呵呵,想想自己沒(méi)學(xué)位,和別人比起來(lái)還真是回事啊。真不知道,將來(lái)我有成就了,學(xué)校會(huì)不會(huì)給“榮譽(yù)學(xué)士學(xué)位”呢?呵呵,比較好玩。

          posted @ 2007-12-26 20:19 花開(kāi)有時(shí) 閱讀(295) | 評(píng)論 (0)編輯 收藏

          java Method類試用

               摘要: 背景:在項(xiàng)目中有一堆javabean,要用在界面上畫(huà)一堆tableview,要對(duì)這一堆tableview進(jìn)行排序,因此要寫(xiě)一堆sorter類(假如為每個(gè)tableview都寫(xiě)一個(gè)的話),工作量比較大。
          思考:其實(shí)這些sorter類都是差不多的,只是調(diào)用的javabean不同,方法名稱不同,實(shí)現(xiàn)的原理,沒(méi)有什么不同,那么該如何使用一個(gè)sorter類就可對(duì)所有的tableview進(jìn)行排序呢?
          思考結(jié)果:也許可以用Class類與Method類,也就是什么reflect機(jī)制。
            閱讀全文

          posted @ 2007-12-23 14:07 花開(kāi)有時(shí) 閱讀(5889) | 評(píng)論 (4)編輯 收藏

          主站蜘蛛池模板: 九龙城区| 清水县| 那曲县| 望城县| 潞西市| 峨山| 临邑县| 常宁市| 弋阳县| 黄山市| 江城| 武夷山市| 敦煌市| 长岛县| 东莞市| 浑源县| 隆昌县| 福泉市| 环江| 普兰店市| 高安市| 即墨市| 丹阳市| 文水县| 新营市| 甘泉县| 桐梓县| 普宁市| 东台市| 台中县| 镇原县| 金溪县| 新和县| 林西县| 沐川县| 肥西县| 什邡市| 濮阳市| 汶川县| 武强县| 新干县|