MouseEvent クラス

[内容]

  以下に示すようなマウスの動きによって発生するイベントを扱います.

( MouseEvent )
ボタンを押す
ボタンを離す
ボタンをクリック
マウスがコンポーネントの領域に入る
マウスがコンポーネントの領域から出る
( MouseMotionEvent )
マウスの移動
マウスのドラッグ

[主な変数]

[主なメソッド]

[使用例]

  1. プログラム例は,マウスのイベント処理の例です.上部のテキストエリアに MouseListenerMouseMotionListener が貼り付けてあり,MouseEvent が発生すると上のテキストエリアに,また,MouseMotionEvent が発生すると下のテキストエリアにメッセージが表示されます.ただし,マウスボタンを押したり離したりしたときのイベントは,右ボタンに対してだけ処理しています.また,マウスの移動やドラッグに対するイベントは,「 SHIFT 」キーを同時に押したときだけ処理しています.ここをクリックするとアプレット版が表示されます(プログラム).

  2. プログラム例は,上と同じようにマウスによるイベント処理を行うものですが,MouseAdapter を用いてイベント処理を行っています.ここをクリックするとアプレット版が表示されます(プログラム).

  3. プログラム例は,ダイアログの一例です.テキストエリアに文字を入力して範囲を選択した後,テキストアリアの下側でマウスの右ボタンをクリックすると,カット&ペーストを行うためのダイアログ(小さな Window )が現れ,テキストエリア内の文字に対してカット&ペーストを実行できます.ここをクリックするとアプレット版が表示されます(プログラム).ただし,ダイアログは,フレームまたはもう 1 つのダイアログをその所有者として定義しなければなりませんので,アプレットから新しい Window を生成し,それをスクリーン中央に表示しています.また,Window を閉じる方法がアプリケーションの場合と異なっています.なお,アプレット自身の大きさは 0 にしてあるため表示されません.

  4. プログラム例は,メニューバー関連クラス( MenuBar クラスMenu クラスMenuItem クラスCheckboxMenuItem クラス)の各メソッド等の使用例です.メニューバーのメニューという項目をクリックすると,下図に示すようなメニューが出現します.最初の 2 つのメニューをクリックすると,テキストエリアにメッセージが表示されます.また,この 2 つのメニューには,キーボードショートカットが割り付けてあります.3 番目の項目は,CheckboxMenuItem です.クリックすることにより,チェックを付けたり消したりすることができます.4 番目の項目は,サブメニューを持っており,テキストエリアの内容に対して,カット&ペーストを行うことができます.また,最後の項目をクリックすると Window が閉じられます.ここをクリックするとアプレット版が表示されます(プログラム).ただし,アプレットには,メニューバーを表示できないため,アプレットから新しい Window を生成し,それをスクリーン中央に表示しています.また,Window を閉じる方法がアプリケーションの場合と異なっています.なお,アプレット自身の大きさは 0 にしてあるため表示されません.

  5. プログラム例は,PopupMenu クラスの各メソッド等の使用例です.テキストエリア内でマウスの右ボタンをクリックすると,ポップアップメニューが出現し,テキストエリア内のデータに対してカット&ペーストを実行することができます.ここをクリックするとアプレット版が表示されます(プログラム).なお,テキストエリアの表示結果の違いは,アプリケーションの場合( Frame クラスを使用し,そのデフォルトレイアウトは BorderLayout )とアプレット版( Applet クラスのデフォルトレイアウトは FlowLayout )とのレイアウトマネージャの違いによるものです.

[参照]

MouseListener, Button, JButton, MouseMotionListener, Dialog, MenuBar, PopupMenu

ホームページ 目次 演習解答例目次 付録目次 索引