<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    花開有時

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

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

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

    posted @ 2008-12-02 11:18 花開有時 閱讀(3012) | 評論 (3)編輯 收藏

    JME研究群(42691979)建立!

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

    posted @ 2008-04-29 14:13 花開有時 閱讀(1540) | 評論 (2)編輯 收藏

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

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

    posted @ 2008-02-05 13:41 花開有時 閱讀(463) | 評論 (0)編輯 收藏

    如何自定義SWT Table的每一個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();
    

    說明:黑體部分是關(guān)鍵,主要是要為table添加一個監(jiān)聽器并要用到SWT.MeasureItem屬性,如果是在TableView下則需要調(diào)用TableView#getTable()方法獲得Table再添加監(jiān)聽器。
    還需要注意的是:
    1)這個特性可能只在Eclipse3.2以上的版本中才有。
    2)不能對單行(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 花開有時 閱讀(2406) | 評論 (1)編輯 收藏

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

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

    posted @ 2008-02-03 15:52 花開有時 閱讀(675) | 評論 (0)編輯 收藏

    定義自己的CellEditor

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

    posted @ 2008-02-03 14:51 花開有時 閱讀(3749) | 評論 (1)編輯 收藏

    工作隨想

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

    posted @ 2007-12-26 20:19 花開有時 閱讀(295) | 評論 (0)編輯 收藏

    java Method類試用

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

    posted @ 2007-12-23 14:07 花開有時 閱讀(5886) | 評論 (4)編輯 收藏

    自定義具有“上圖片”下“文字”效果的Button

           SWTButton控件時可以加圖片與文字的,但是不能控制圖片與文字的位置。比如我要定義一個Button具有這樣的效果 ,就靠Button得一些屬性和方法做不出來(但是Action可以)。那么如果我就是需要這樣的Button,該怎么辦呢?我采用的方法是用先加圖片,再用GC畫一個文字(同時也可以控制文字的大小、樣式和位置)

    具體代碼如下:

    //定義一個Button

    Button button = new Buttonshell,SWT.NONE;

    //加圖片

    Button.setImage(new Image(Display.getCurrent(),”….圖片的路徑”);

    //加上繪制事件

    button.addPaintListener(new PaintListener(){

       public void paintControl(PaintEvent e){

             //設(shè)置字體樣式等等

             Font font = new Font(Display.getCurrent(),””,8,SWT.BOLD);

             e.gc.setFont(font);

             e.gc.drawText(“haha”,0,0);

    }

    });                        

    ok,基本上就是這樣了,不知道有沒有更好的方法。

    posted @ 2007-12-11 12:57 花開有時 閱讀(940) | 評論 (0)編輯 收藏

    IFolderLayout#addView()、IPageLayout#addView()與IPageLayout#addStandaloneView()的區(qū)別。

     

    IFolderLayout#addView():views放在一個IFolderLayout(類似一個文件夾)里,可以疊加view

    IPageLayout#addView():view按照方法的參數(shù)設(shè)置放置,程序運(yùn)行后可以疊加view

    IPageLayout#addStandaloneView():view按照方法的參數(shù)設(shè)置放置view,程序運(yùn)行后不能疊加view

    posted @ 2007-12-10 12:59 花開有時 閱讀(1821) | 評論 (0)編輯 收藏

    僅列出標(biāo)題
    共3頁: 1 2 3 下一頁 
    主站蜘蛛池模板: 亚洲人AV在线无码影院观看| 久久精品九九亚洲精品天堂| 精品久久洲久久久久护士免费| 一个人免费日韩不卡视频| 亚洲欧美成aⅴ人在线观看| 欧美男同gv免费网站观看 | 国产免费不卡v片在线观看| 亚洲成人免费网站| 精品久久8x国产免费观看| 最近中文字幕免费mv在线视频| 99精品视频在线观看免费专区 | 国产精品午夜免费观看网站| 一区二区三区在线免费| 中文字幕一区二区三区免费视频| 羞羞视频免费网站在线看| 久草免费福利视频| 蜜臀98精品国产免费观看| 中文字幕无码免费久久99| 午夜视频在线观看免费完整版| 国产男女猛烈无遮挡免费视频网站| 四虎成人精品在永久免费| 国产gv天堂亚洲国产gv刚刚碰| 亚洲成色999久久网站| 亚洲国产精品综合久久久| 在线综合亚洲欧洲综合网站| 亚洲高清毛片一区二区| 理论片在线观看免费| 91免费福利视频| 精品无码免费专区毛片| 成人国产mv免费视频| 亚洲视频人成在线播放| 亚洲国产成人精品不卡青青草原| 亚洲国产日韩在线人成下载| 亚洲人成人网站18禁| 久久久久免费视频| 亚洲免费一级视频| 国产三级免费观看| 亚洲成在人天堂在线| 亚洲人成自拍网站在线观看 | 亚洲va久久久久| 美女免费视频一区二区三区|