2016-10-17 2 views
0

オブジェクトが選択されているときにコンテキストメニューを置き換えるにはどうすればいいですか?コンテキストメニューを簡単に交換する

現在、フィリップ・リーフマのAPIとAutodesk.ADN.Viewing.Extension.ContextMenu.jsの例に基づいてこれを試しています。

var contextMenu = new Autodesk.Viewing.UI.ObjectContextMenu(viewer); 

contextMenu.buildMenu(Autodesk.Viewing.AGGREGATE_SELECTION_CHANGED_EVENT, [{ title: 'This is a menu item', target: function() { alert('Menu item clicked'); } }]); 

viewer.setContextMenu(contextMenu);  
+0

あなたは何を意味、より特異的であることができる「置き換え」を探しthereてください。 ..?メニューの項目を自分のものに置き換え、いくつかのオプションを追加して、コンテキストメニュー自体を置き換えますか? –

+0

私は自分のメニューの項目を置き換えたいと思います。私はregisterContextMenuCallbackでメニューを追加できますが、プリセットコンテキストメニュー項目を削除することはできませんでした。 –

答えて

1

あなた自身ですべてのメニュー項目を置き換えることが非常に簡単でなければなりません...完全なサンプル

Autodesk.ADN.Viewing.Extension.AdnContextMenu.prototype.buildMenu = 

     function (event, status) { 

      //completely disable native menu 
      //var menu = Autodesk.Viewing.Extensions.ViewerObjectContextMenu.prototype.buildMenu.call(this, event, status); 

      //and sneak your own ... 
      var menu = [] 

      menu.push({ 
      title: "Dude menu item", 
      target: function() { 
       alert('Dude I was clicked!'); 
      } 
      }) 

      return menu; 
     }; 
+0

解決策として受け入れることができますか、その答えがあなたの必要性にどのように対処していないのかをお伝えください。私たちと他のプログラマーにとって、実際に問題を解決するときに答えを「解決策」とすることは重要です。ありがとう –

関連する問題