ブラウザの下端にマウスの座標を表示

リアルタイムにマウスの座標をブラウザの下端に表示します。
この機能(showStatus)は appletviewer で実行したときにだけ表示されます。
WWW ブラウザから起動したときは、表示されないので念のため。

前田稔の超初心者のプログラム入門

プログラム−1

  1. メモ帳などでタイプして status.java の名前で保存して下さい。
    //★ ブラウザの下端にマウスの座標を表示    前田 稔
    //   appletviewer status.htm
    import java.applet.Applet;
    import java.awt.Event;
    import java.awt.Color;
    
    public class status extends Applet
    {   String Msg;
    
        public void init()
        {   setBackground(Color.gray);  }
    
        public boolean mouseMove(Event e,int x,int y)
        {   Msg = "X=" + x + "  Y=" + y;
            showStatus(Msg);
            return true;
        }
        public boolean mouseExit(Event e,int x,int y)
        {   showStatus("");
            return true;
        }
    }
    
  2. Applet のプログラムは java.applet.* をインポートして下さい。
    マウスの移動を検出するので java.awt.Event をインポートします。
    String Msg; は座標を編集する領域です。
  3. mouseMove() をオーバーライドして、マウスの座標を編集して showStatus(Msg); で表示します。
    showStatus() を使うとブラウザの下端にメッセ−ジを表示することができます。
        public boolean mouseMove(Event e,int x,int y)
        {   Msg = "X=" + x + "  Y=" + y;
            showStatus(Msg);
            return true;
        }
        
  4. このプログラムをコンパイルすると、警告メッセージが表示されます。
    警告なので無視すれば「大抵の場合動く」のですが、場合によっては支障をきたすことがあります。
        注:status.java は推奨されない API を使用またはオーバーライドしています。
        注:詳細については、-Xlint:deprecation オプションを指定して再コンパイルしてください。
        
    -Xlint:deprecation を付け加えてコンパイルすると、エラーの内容が解ります。
    javac status.java -Xlint:deprecation
    mouseMove() や mouseExit() は、現在のバージョンでは奨励されていないようです。

プログラム−2

  1. プログラム−1では警告メッセージが表示されます。
    そこで MouseMotionListener を implements してプログラムしてみました。
    //★ ブラウザの下端にマウスの座標を表示    前田 稔
    //   appletviewer status.htm
    import java.applet.*;
    import java.awt.event.*;
    import java.awt.Color;
    
    public class status extends Applet implements MouseMotionListener
    {   String Msg;
    
        public void init()
        {   setBackground(Color.gray);
            addMouseMotionListener(this);
        }
    
        // Mouse Move を検出
        public void mouseMoved(MouseEvent e)
        {   Msg = "X=" + e.getX() + "  Y=" + e.getY();
            showStatus(Msg);
        }
    
        public void mouseDragged(MouseEvent e) { }
    }
    
  2. 今度は前回のように警告メッセージが表示されることはありません。
    mouseDragged() は、使わなくても定義しなければなりません。
    Mouse のプログラムは「プログラム入門(Java)/Swing GUI/Key & Mouse の操作」を参照して下さい。

Java Game Program