• ベストアンサー

マウスポインタの謎

こんにちは。以前からどうしても不思議に思っていたことがあるので質問させていただきます。それほど重要ではないので、お暇な方がいましたら茶飲み話代わりに教えていただけると嬉しいです。 モニター上でマウスポインタが動いて、ブラウザ上のリンクをクリックしたり前ページへ戻ったりコピー&ペーストをしたりと……いろいろな事をしますよね。その時、モニター画面上ではどういう処理が行われているんですか? 説明がしづらいんですが(すみません。^^;)、このマウスポインタが画面上でブラウザで見ているページより一歩手前側に浮いていてすらすら動く理由、そして的確な位置で的確な処理(リンク上でクリックできてリンク先のページへ飛ぶなど)ができるのはどうしてなんでしょう? マウスポインタを扱うだけで一通りの事ができてしまうのがいつも不思議なんです。文字の入力はキーボードを打った信号が伝わってされるのだと分かるんですが、マウスの場合、マウス自体には細かな操作役割がなくてすべてこのマウスポインタの動きで決定されているような気がするので……。 すみません。分かりづらい質問ですね。(^^;) 要はマウスポインタが、モニター上の一部分を捉えて何かするだけでなぜハード内部できちんとした処理が行えるのか不思議でしょうがない、ということなんですが。 これは、ATMなどで画面を指で押すだけでいろいろな処理が行えるのと同じ謎です。あ。こっちの方が疑問の例えとしては分かりやすいですね。 webサイトを作るくらいの知識はありますが、基本的には素人なので分かりやすい言葉で教えていただけると助かります。特にマウスポインタが浮いている不思議、これがすごく聞きたいです。どうぞよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • LAMY
  • ベストアンサー率25% (249/985)
回答No.2

古いマウスの方が説明し易いのですが、マウスにはセンサーがあり、縦方向と 横方向にどれだけマウス本体が動かされたか信号を送っています...その情報 をポインタの座標として変化(加減算)させて移動します。 質問者が画面で見ているのは、Windowsが見易く表示してくれているだけで、 実際にウィンドウの大きさや位置関係も座標で管理されています。 (Windowsが起動したら必ず中央にいるでしょ...あれが基準) なのでマウスでクリックされた場合、ポインタの座標がどのうウィンドウ内 (四隅の座標値の間)にあるか、さらに表示順番で1番上なのはどのウィンド ウなのかを判断しています。 この表示で現座標の場所に、矢印を表示して いるだけなのです...Windows的には画面にポインタ表示する必要はありま せんが、1番上にいるように重ね書きをしているだけなのです。 (画面にある物の、全ての座標を管理しています) 知っている人が居ると良いのですが、画面には「リフレッシュレート(Hz)」 と言うのがあり、猛烈な速さで重ね書きを繰り返していると思って下さい。 (詳しく書くと正しくないですが...そんな物と考えて下さい) 画面のタッチパネルは見えないセンサー縦横に張り巡らされて、圧力だとか 静電気だとかを座標で感知しています。 ボタンとなる絵柄の座標の内側な ら「そのボタンを選択した」と判断(感じる)する訳ですね。  ・昔のは反応が悪くパネルが窪んだでしょ...あれは圧力感知式。  ・最近のは反応良くガラスみたく固いでしょ...これは静電感知気式。 なるだけ分かり易く書いたつもりですが...(^-^;...如何です?

tozuki
質問者

お礼

おばかな質問にさっそく回答してくださってありがとうございます。 拝見して、目からうろこが落ちました……。LAMYさんの回答で頭の中がパーッと明るくなりました。ずっと隅にあったもやもやが一気に晴れた思いです。ありがとうございます。 そうですかー。座標! これでマウスポインタ(がきちんと処理を行える)理由が分かりました。そうですよねぇ。要は画面上が地図帳みたいになっていれば、縦軸と横軸である一点の位置は分かりますもんね。私がぐるぐると猛スピードでマウスポインタを動かしているそれ以上のスピードで、パソコン内では処理が行われているということなんですね。(人間とくらべるなと言われそうですが。^^;) マウスポインタが浮いている理由は、他の方が回答くださったので理解できました。 >リフレッシュレート(Hz) というのは、その方が書いてくださった事と同じでよいのでしょうか? タッチパネルについても教えていただいてありがとうございます。これも永年不思議だったので助かりました。 本当にとても分かりやすく書いてくださったので、おばかな頭でも理解しやすかったです。 >(Windowsが起動したら必ず中央にいるでしょ...あれが基準) この一言に、思わずその場で再起動してしまいました。本当に最初は真ん中にありますね。ポインタが。わざと端っこで終わらせてみたんですが。(^^;) 疑問に思っていたことがすっきりすると気持ちいいですね。しかも色々と勉強になりましたし。こんな質問におつき合いくださって本当にありがとうございました。感謝してます。(ぺこり/お辞儀)

その他の回答 (3)

  • g_dori
  • ベストアンサー率47% (330/699)
回答No.4

実際、マウスはOSに対して移動量と、クリック等の状態を伝えているだけなんです。 これらをソフト側から監視して、「この場所でクリックされたらこう動く」という風にプログラムが組まれているんです。 マウスポインタも同じ事で、「マウスがどれだけ移動したら、何処にポインタを表示する」というプログラムが内部で動いています。 当然クリックに反応するプログラムが無ければ、マウスはただ動くだけでクリックしても全く反応はありませんし、表示するプログラムをカットすれば矢印は表示されません。 ですからソフトによってはスクロールが機能しなかったり、マウスポインタが表示されなかったりするものもあります。(例えばフルスクリーンのゲーム等) 多分マウスが司令塔で、「ハイ、そこの人! 「戻る」をやって!!」と想像していたのかもしれませんが、逆です。 マウスは「何処そこでクリックしましたよ~」と言うだけで、それを聞いた側が「あ、「戻る」しなくちゃ」「ここにマウスポインタを表示しなくちゃ」と、マウスの動作に伴い複数のプログラムが同時進行する訳です。 マウスが一番上に表示される理由が気になっているようですが、ウィンドウを沢山切り貼りして、最後にマウスの絵を一部半透明色で影を書き込めば、立体的なマウスポインタの出来上がりです(笑) 先に記述したとおり、表示されない環境もあります。 これでわかりますか・・?

tozuki
質問者

お礼

おばかな質問に回答してくださってありがとうございます。 情報量が増えるに従って少し頭が「?」状態になってきましたが(苦笑)、せっかく為になることを皆さん教えてくださっているので一生懸命吸収したいと思ってます。 >多分マウスが司令塔で、「ハイ、そこの人! 「戻る」をやって!!」と想像していたのかもしれませんが これは一応プログラム自体がマウスの動作によって処理を行っているんだなと思ってましたが(あ。でも「マウスの動作によって」というのは「マウスの指示による」って思ってたんでしょうか。私は。う~む。^^;)、マウスって要は人間とプログラムの橋渡しだと考えればいいんでしょうか。人間の動作がマウスに伝わってマウスの動作がプログラムに伝わる……って考えでは的ハズレでしょうか?(^^;) 一番手前にあるマウスポインタの謎、は他の方にも教えていただきましたが、たんに視覚的なものなんですねぇ。すごく不思議だったんですが。 未だに、気持ち的には画面の一部分をポチッと押せば何かの処理がされるというのは摩訶不思議なんですが、それは私がパソコン使う前まではゲームすらやったことがない人だからなのかもしれませんね(笑)。 こんな質問に回答してくださって本当にありがとうございました。色々と勉強になりました。感謝しています。(ぺこり/お辞儀)

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.3

いまどきのプログラムは、「こういうことがされました(&その状況)」ということを OS がプログラムに教えて、プログラムは、その内容を見て適当に動くように作られ てます(難しく言うと、イベントドリブンと言います)。 キーボードを打った場合には「キーが押されました(押されたキー)」という通知が、 マウスの場合には「マウスが右クリックされました(マウスの位置)」という通知が、 プログラムに送られます。 マウスが浮いているのは、あんまり不思議じゃないです。影を書いているから浮いてる ように見えるだけですね。 マウスポインタが一番手前に書かれているように見えるのも、先と同じ仕組みです。 マウスポインタが移動すると、ポインタがどいた場所を元の絵で書かなければいけない ので、「書き直しの必要が出ました」という通知がプログラムに送られ、プログラムは そのたびに一生懸命書き直しているんです。

tozuki
質問者

お礼

おばかな質問に回答してくださってありがとうございます。 パソコンって使い方を覚えるのはわりと簡単ですが、いざ内部でどういう処理がされているんだろうと考えると、素人にはまったく謎だらけですね。^^; >キーボードを打った場合には「キーが押されました(押されたキー)」という通知が、 >マウスの場合には「マウスが右クリックされました(マウスの位置)」という通知が、 >プログラムに送られます。 基本的にはキーボードもマウスも同じような働きなんですね。そういえば一度マウスが壊れたときにキーボードをマウスの代わりにしたことがあります。 >マウスが浮いているのは、あんまり不思議じゃないです。影を書いているから浮いてる >ように見えるだけですね。 わりと単純だったんですね。(^^;) 自分のポインタアイコンが影付きを選んでいるのでよけいそう見えているのかもしれませんね。 マウスが動くたびにプログラムが書き直しをしているというのはまったく知りませんでした。だとすると、あまり無意味に画面上でマウスを動かさない方がパソコンは長持ちするんでしょうか……なんて。そんなことは関係ないですよね(笑)。 こんな質問におつき合いくださってありがとうございました。色々と勉強になりました。感謝しています。(ぺこり/お辞儀)

  • die0413
  • ベストアンサー率12% (18/139)
回答No.1

それは簡単に言うのがちっと難しいかもしれないんですけど、基本的にはキーボードでキーが押されたのと同じですよ。 ここの場所でマウスがクリックされたらって言うイベントが発生されたらこの処理(例えばファイルを選択とか)をしてって言うプログラムがあるからです。 で右ボタン、左ボタン、スクロールボタンで別の信号で管理出来ていればキーボードのようにどのキーが押されたかってのも判断できますよね。

tozuki
質問者

お礼

さっそくの御回答ありがとうございます。おばかな質問ですみません。^^; >基本的にはキーボードでキーが押されたのと同じですよ。 ……そうですよね。頭では(←ココ強調してください)ちゃんとそういうプログラムがされているからなんだろうと思ってはいるんです。 ただ、ボスベのペットと遊んでいてマウスポインタをぐるぐる回してモニター上を縦横無尽に走らせていると、よくこのマウスポインタの位置をパソコン(内部の処理部分?)が見失わないなぁとか思ったりするんです。 webサイトを手書きで作っているので、貼られたリンクをマウスでクリックすると他ページへ飛ぶなどという仕組み自体は分かるんですが、やはり謎なのはこの「マウスポインタ」自体なのかもしれません(苦笑)。 画面上で浮いているマウスポインタ……ああ、これはなぜ浮いているのでしょう。本当に謎です。 こんな質問におつき合いありがとうございました。感謝しています。(ぺこり/お辞儀)