- ベストアンサー
動画の座標値をマウスクリックで得ることができますか?
Java初心者です。 マウスのイベント処理(X,Y座標を得る)と動画(ネットワークカメラの動画)をうまく組み合わせて、その動画の座標値を得る方法を教えてください。とりあえず静止画の座標値を得る方法でも結構です。 Javaに詳しい方、是非ご教授お願い致しますm(__)m
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
APIより ----------------------------------------------------------- コンポーネント上の「関連する」マウスイベント (プレス、リリース、クリック、コンポーネントへの出入り) を受け取るためのリスナーインタフェースです。マウスの移動およびドラッグを追跡するには、MouseMotionListener を使用します。 マウスイベントの処理に関連するクラスは、このインタフェースに含まれているすべてのメソッドを定義してこのインタフェースを実装するか、関連するメソッドだけをオーバーライドして abstract クラス MouseAdapter を拡張します。 そのようなクラスから作成されたリスナーオブジェクトは、コンポーネントの addMouseListener メソッドを使ってコンポーネントに登録されます。マウスイベントは、マウスを押したり、離したり、クリック (押してから離す) したときに生成されます。また、マウスカーソルがコンポーネントに入ったり、コンポーネントから出たりしたときにも、マウスイベントが生成されます。マウスイベントが発生すると、リスナーオブジェクト内の関連するメソッドが呼び出され、そのメソッドに MouseEvent が渡されます。 -------------------------------------------------------------- とあります。 要するに、このMouseListenerを介して、マウスが押されたと言う イベントを受け取ります。 このインターフェイスには5つのメソッドが用意されているので それを実装してもよいですし、今回ならmousePressed()だけオーバーライド してそれをabstract クラス としてもよいです。 まぁ、簡単な話しがMouseListenerをimplements しておけば、 マウスが押された時に、mousePressed()の中の処理が走るわけです。 ちょっと、説明が下手でわかりにくかったら、また質問してください。
その他の回答 (1)
- mkim
- ベストアンサー率67% (25/37)
java.awt.event.MouseEvent のクラスを見てみよう。 getPoint()なんて言うメソッドがあるから、それを使うといいかも。。 返り値は、Point型だからjava.awt.Pointも見てみよう。 MouseListenerインターフェイスも見てみようね。 public class hogehoge extends Applet implements MouseListener { Point point; int x; int y; public void mousePressed(MouseEvent me) { point = me.getPoint(); x = point.x; y = point.y; } 以下省略 みたいな感じでいけると思うよ。 あとは、色々自分で考えてがんばってください。 ではでは~(^^)
補足
回答ありがとうございます! 返事送れて申し訳ありませんでした。 「MouseListenerインターフェイス」についてよくわからなかったので、もう少し解説していただけないでしょうか? 宜しくお願い致します(^^)
お礼
ご指導ありがとうございました(^^) 他にいろいろ疑問は残りましたが、これからいろいろ頑張ってみようと思います。 また、機会があれば回答宜しくお願い致します。 本当にありがとうございました! では(^o^)/~~~
補足
こんにちは! いつもお世話になってます(^^) mkimさんのおかげでマウスでブラウザ(IE5.0)上の灰色の部分の座標値を得ることはできました(^o^) しかし、その灰色の部分に画像を貼り付け、その画像の座標値を得たいのですが、画像をうまく貼り付けることができません。 javaファイルのと同じディレクトリにあるローカルな画像は貼り付けて座標値を得ることができたのですが、インターネット上にある画像を貼り付けることができませんでした。 最終的にはライブカメラの画像を貼り付けようと考えているので、これができないと先に進むことができません。 もしご存知でしたら教えてください(^^) わかりにくい質問でごめんなさいm(__)m 一応、うまくいかなかったjavaファイルを載せておきます。 // My_Image03.java import java.awt.Graphics; import java.applet.Applet; import java.awt.Image; public class My_Image03 extends Applet { Image im; public void init() { im = getImage(getDocumentBase(), "http://www.honda.co.jp/image/b_hmark.gif"); } public void paint(Graphics g) { g.drawImage(im, 10, 10, this); } } 構文が間違っているのでしょうか? 回答、お待ちしております(^o^)丿