C言語関係掲示板

過去ログ

No.247.プログラムにてマウスカーソルを動かすことについて


No.1492

プログラムにてマウスカーソルを動かすことについて
投稿者---安藤(2002/05/11 18:08:51)


 初めまして。初めて投稿させていただきます。
 私は最近、ウインドウズプログラムを作ろうとC言語を
少しずつ勉強しているのですが、その中で、マウス処理について
VC++や、ボーランドのコンパイラの解説書を少し読んだのですが、
以下のようなプログラムの方法がわかりません。

製作したあるwindowsプログラム中で、プログラムにて
マウスを色々と動かし、その場所でクリックをしたりする(例えば、
右下へ、画面上のマウスカーソルを動かして、右クリック、
左クリックなど手動ではなく自動で)。

こういう処理の仕方というものが発見できなくて困っている状況です。
こういったプログラムの解説をしているようなサイトや
書籍を御存知でしたら、ぜひお教えいただきたいと思います。
 C言語とは直接話が違うかとも思いますが、知っている、といった方が
おられましたらよろしくお願いします。
失礼しました。

No.1496

Re:プログラムにてマウスカーソルを動かすことについて
投稿者---kikk(2002/05/12 05:10:29)


ども。


>製作したあるwindowsプログラム中で、プログラムにて
>マウスを色々と動かし、その場所でクリックをしたりする(例えば、
>右下へ、画面上のマウスカーソルを動かして、右クリック、
>左クリックなど手動ではなく自動で)。

こんなんでどうでしょ?

/* 移動(相対座標) */
mouse_event(MOUSEEVENTF_MOVE,x,y,0,0);
/* 移動(絶対座標) */
mouse_event(MOUSEEVENTF_MOVE|MOUSEEVENTF_ABSOLUTE,x,y,0,0);

/*左クリック*/
mouse_event(MOUSEEVENTF_LEFTDOWN,x,y,0,0); /*押す*/
mouse_event(MOUSEEVENTF_LEFTUP,x,y,0,0); /*放す*/

クリックするとアクティブなウィンドウが変わる可能性があるので
あしからず。


>こういう処理の仕方というものが発見できなくて困っている状況です。
>こういったプログラムの解説をしているようなサイトや
>書籍を御存知でしたら、ぜひお教えいただきたいと思います。

Windowsの場合、かなりの処理がWin32 APIで行えます。したがって、
「Win32 API やりたい処理」でGoogleあたりで検索をかけるのが
ひとつの方法です。

どのAPIを使えばいいかはわかったけど、詳細がわからない場合は
http://www.microsoft.com/japan/developer/library/
へどうぞ。最初からここで探してもOK。効率のよさそうなほうを。

本は何冊か出ていますがけっこう高いです。。

それと、けっこう使えるのが、Windowsプログラミング系のMLです。
登録してもいいですが、役に立つのは過去ログなので、過去ログが
検索できさえすればどこでもOK。
ちなみに、個人的には、
http://www2.big.or.jp/~osamu/Delphi/
を使っています。C++BuilderとDelphiですが、Windowsプログラミングの
話もよく出ているので。ダウンロード可。専用ブラウザ付き。データが
両方で現在140Mバイト以上もあるのがちょっと難点かも。


では。

No.1498

Re:プログラムにてマウスカーソルを動かすことについて
投稿者---安藤(2002/05/12 12:17:27)


こんにちは。
kikkさん、ありがとうございます。

私は、そういう処理が出来るのか出来ないのか、何をすれば良いのかが
解らない状態でしたので、kikkさんのご説明はとても助かりました。
本当にありがとうございました。

戻る


「初心者のためのポイント学習C言語」 Last modified:2002.06.22
Copyright(c) 2000-2002 TOMOJI All Rights Reserved