2011-02-02 9 views
2

削除する以外はJMenuをダウンしました。 :D私はpopup.remove(NUMBER)を行うことができますが、それはNPEエラーを引き起こす可能性があることを意味します。だから、すべてJMenuItemsJMenuから削除する方法はありますか?JMenuからすべてのJMenuItemを削除します

は、誰もが興味を持っていた場合にここに私の更新checkPopup()です:ほとんどが

  private void checkPopup(MouseEvent e) 
    { 
     if (e.isPopupTrigger()) 
     { 

      int itemSelectx = listbox.getSelectedIndex(); 
      Object actItemx = listbox.getModel().getElementAt(itemSelectx); 
      System.out.println("You pressed on " + actItemx); 

     if (actItemx == "Item 1") { 
      popup.add(cancelMenuItem); // add the ability to cancel an item 
      popup.add(dropMenuItem); // add ability to drop the item 
     } 

      popup.show(inv.this, e.getX(), e.getY()); // show item at mouse 
      popup.revalidate(); // revalidate 
      //popup.remove(0); // removing first (0) menu item 
     } 
    } 

! :)(はい、私はtried GoogleとJavaDocs)

+0

Google検索がうまくいかなかったのは、JMenuの代わりにJListMenuを探したからです:-) –

答えて

7

私はあなたが正しく後に理解している場合はJMenuremoveAll()メソッドが必要です。 Javadoc hereを参照してください。

+0

ありがとう! – nn2