2009-07-19 6 views
0

私はカスタムコンポーネント上でドラッグアンドドロップを使用する小さなGUIアプリケーションを構築しています。ドラッグアンドドロップを有効にしたコンポーネントのコンテキストメニューを作成したいと思います。ドラッグアンドドロップとコンテキストメニューのイベントをJavaでクロスプラットフォーム

ここで私の質問は、これらの2つのイベントを正しく区別する方法です。 コンテキストメニューにはAPI関数がありますが、DnDの場合は見つかりませんでした。 私はDnDをトリガするためにマウスを使用しましたが、Windows上でコンテキストメニューを使用すると、マウスの上でトリガされるため、DnDがトリガされます。

答えて

1

DnDの場合は、マウスを下に動かしてマウスを動かすようにします。

コンテキストメニューの場合は、マウスクリックイベントを使用します(マウスボタンを離すとメニューが表示されます)。

1

Swing tutorialには、「メニューの使い方」と「ドラッグアンドドロップ」に関するセクションがあります。

メニューのセクションでは、MouseEventの "isPopupTrigger"をチェックしてポップアップを表示する方法を示します。 JDK5以降、このプロセスはsetComponentPopupMenu()メソッドが追加されているので簡単です。

DnDのセクトンは、組み込みのDnDサポートの使い方を示しています。

関連する問題