2013-02-22 47 views

回答

2

如果您通過命令/菜單貢獻或通過「ActionFactory.ABOUT.create(window);」添加了「關於」菜單項,函數,那麼你可以通過提供你自己的處理程序來覆蓋默認的「about」命令處理程序。

添加到您的plugin.xml:

<extension 
    point="org.eclipse.ui.handlers"> 
    <handler 
     class="my.AboutActionHandler" 
     commandId="org.eclipse.ui.help.aboutAction"> 
    </handler> 

然後創建my.AboutActionHandler類:

package my; 
import org.eclipse.core.commands.AbstractHandler; 
import org.eclipse.core.commands.ExecutionEvent; 
import org.eclipse.core.commands.ExecutionException; 
import org.eclipse.ui.handlers.HandlerUtil; 

public class AboutActionHandler extends AbstractHandler { 
    @Override 
    public Object execute(ExecutionEvent event) throws ExecutionException { 
    new MyAboutDialog(HandlerUtil.getActiveShellChecked(event)).open(); 
    return null; 
    } 
} 

在這個時間點你真的要創建MyAboutDialog類作爲內置的AboutDialog類的子類,並簡單地覆蓋configureText方法,但不幸的是AboutDialog類是「內部的」,所以你不能擴展它--- doh!

我的建議是簡單地在Eclipse中打開AboutDialog類(shift-ctl -t AboutDialog)並將源代碼複製粘貼到您自己的MyAboutDialog類中;那麼只需編輯configureText方法來設置你想要的字體。不是我承認的最優雅的選擇,但我看不到任何其他方式。

+0

上述LewisG建議的修復會導致help-> about菜單項被禁用。有什麼問題可能是什麼建議? – 2016-02-24 23:00:17