注:これらの2つの方法:
ヒント:サブクラスAbstractHandlerではなくIHandlerを実装します。しかし、あなたが設定する必要があり、以下のセクションにそれを使用することができます。
選択した操作が有効になっていませんIHandler
popupMenus代わりのメニューを使用しません
ISENABLED:trueに設定する必要があります
isHandled:trueに設定する必要があります
輸入org.eclipse.core.commands.AbstractHandler。 輸入org.eclipse.core.commands.ExecutionEvent。 輸入org.eclipse.core.commands.ExecutionException。 輸入org.eclipse.core.commands.IHandler。 輸入org.eclipse.core.commands.IHandlerListener。 輸入org.eclipse.jface.dialogs.MessageDialog; 輸入org.eclipse.swt.widgets.MessageBox。 輸入org.eclipse.ui.IWorkbenchWindow; 輸入org.eclipse.ui.handlers.HandlerUtil; パブリック クラス MyHandlerというの実装IHandler { プライベート FontChangerフォント= FontChanger.getInstanceを(); @Override 国民をオブジェクト(ExecutionEventイベント)を実行スローExecutionException { // TODO自動生成方法スタブ IWorkbenchWindowウィンドウ = HandlerUtil.getActiveWorkbenchWindowChecked(イベント)。 MessageDialog.openInformation( window.getShell()、 "デモ" 、 "こんにちは、Eclipseの世界" ); font.decreaseSize(); リターン ヌル。 } @Override 公共 ボイドaddHandlerListener(IHandlerListener handlerListener){ // TODO自動生成方法スタブ } @Override 公共 ボイド廃棄(){ // TODO自動生成方法スタブ } @Override パブリック ブールISENABLED(){ // TODO自動生成方法スタブ 戻り 真。 } @Override パブリック ブールisHandled(){ // TODO自動生成方法スタブ 戻り 真。 } @Override 公共 ボイドremoveHandlerListener(IHandlerListener handlerListener){ // TODO自動生成方法スタブ } }
メニュー:
http://stackoverflow.com/questions/1342532/how-to-add-items-in-popup-menu
メニューまたはメニュー項目として追加します
メニューのベースのロケーションURIをEclipseの
彼らはネット上で見つけることは不可能であるため、ここではorg.eclipse.ui.menus拡張ポイントで使用されている日食内のすべての基地の場所のURIの一覧は以下のとおりです。
メニュー:org.eclipse.ui.main.menu //トップレベルのメニューの
ポップアップ:org.eclipse.ui.popup.any //全ポップアップメニューの
ツールバー:org.eclipse.ui.main.toolbar //トップレベルのツールバー
ツールバー:org.eclipse.ui.trim。 Command1を//左上トリム(メインツールバー領域)
ツールバー:org.eclipse.ui.trim.command2 //右上のトリム(遠近スイッチャーエリア)
ツールバー:org.eclipse.ui.trim.vertical1 //垂直方向の左側をトリム
ツールバー:org.eclipse.ui.trim.vertical2 //右垂直トリム
ツールバー:org.eclipse.ui.trim.status //ステータスラインは、トリム
部分(ビューまたはエディタのメニュー/ツールバー/ポップアップにアクセスするには):
メニュー:partid //一部の山形メニュー
ツールバー:partid //一部のツールバー(他のツールバーを含めることはできません)
ポップアップ:partid //一部のポップアップメニュー(最初createPartControlのコンテキストメニューを登録します)
灰色のプラグインメニュー日食
ハンドラクラスをチェックすることは正しいセットで、または実装していません
ます。https://www.cnblogs.com/alterhu/p/3996200.htmlで再現