2011-07-14 5 views
1
im trying to get right click menus to come up when they control right click in a JPanel. I researched a bit and was able to develop the code, but for some reason the isPopUpTrigger returns false, any ideas? Thanks! 

else if(arg0.getButton() == MouseEvent.BUTTON3) 
      { 
       if(controlIsPressed){ 
        class PopUpDemo extends JPopupMenu { 
         JMenuItem anItem; 
         public PopUpDemo(){ 
          anItem = new JMenuItem("Click Me!"); 
          add(anItem); 
         } 
        } 
        if(arg0.isPopupTrigger()){ 
         PopUpDemo menu = new PopUpDemo(); 
         menu.show(arg0.getComponent(), arg0.getX(), arg0.getY()); 
        } 
       } 

答えて

1

MouseListenerのどのメソッドを呼び出していますか?どちらのOSに応じて、mousePressedまたはmouseReleasedによってトリガされる可能性がありますので、両方の方法からこれを呼び出す必要があります。

+0

私はそれだけでしたが、私はマウスを押しただけでしたが、別の問題が発生しました。Imは現在別のアプリケーションのマップエディタを作ろうとしています。これは実際には30FPSで動作する実行可能なアプリケーションです。ポップアップは数秒間しか表示されず、ゆっくりと点滅します。実行中のJPanelでどのように動作するかは、どのように考えてもかまいません。 – Colton

+0

もっとコードを見ることなく、教えても大変です。イベントディスパッチスレッドですべてのGUI関連アプリケーションを実行していることを確認してください。そうしないことは、フリッカーの一般的な原因です。さらに詳しい情報が必要な場合は、新しい質問をいくつかの詳細/コードとともに掲示する必要があります。 –

関連する問題