ページ 11

マウスカーソル(カレット)の作成方法

Posted: 2010年6月22日(火) 23:01
by shiro4ao
通常Windowsにはマウスカーソル(矢印)はひとつだけですが、
キーボードの矢印キーで移動できるようなマウスカーソルをもう一個作ることは出来ますか?
マウスにコントロールされたマウスカーソルと
キーボードにコントロールされたマウスカーソルで同時に操作がしたいのです。

問題点として、
1.そもそもマウスカーソルは複数作成出来るのか
2.2つのマウスへの命令をどうやって分けるのか
 (mouse_event()関数にはマウスを識別するような引数はない)
といったものが有ります。
Windows Vista , C言語 API にて作成しようと思います。

非常におかしな質問ですがご回答いただければ幸いです。

Re:マウスカーソル(カレット)の作成方法

Posted: 2010年6月23日(水) 00:42
by 小太鼓
こんばんわ,

新人ですが,誰もレスしてないので・・・

linuxユーザなのでwindowsに詳しくはないですが,linuxではできるみたいです.

http://blog.livedoor.jp/vine_user/archi ... 97803.html

Re:マウスカーソル(カレット)の作成方法

Posted: 2010年6月23日(水) 12:14
by shiro4ao
ご回答ありがとうございます、
マウスカーソルの複数の作成はどうやらできないようです。
(調べ方が悪い可能性もあります!)
また別の方法を考えてみます。

ありがとうございました。

Re:マウスカーソル(カレット)の作成方法

Posted: 2010年6月23日(水) 12:15
by
以前、フリーソフトでマウスカーソルをキーボードで動かすソフトとマウスカーソルを二つ表示して切り替えて使用するソフトは見たことがあるので、なんの根拠もありませんが、出来そうな気がします。windowsです。

Re:マウスカーソル(カレット)の作成方法

Posted: 2010年6月23日(水) 12:35
by ookami
ズバリではありませんが、こんなのがありました。
http://ja.wikipedia.org/wiki/%E3%83%9E% ... 6%E3%82%B9
入手や導入については分かりませんが...

以前デモを見学したことがあって、た~しか「マインスィーパー」やってたと思うので、たぶんwindowsです。

Re:マウスカーソル(カレット)の作成方法

Posted: 2010年6月23日(水) 14:40
by shiro4ao
解決にしたのに投稿ありがとうございます。
希望が持てました!
調べればあったのですね・・・・浅はかでした・・・・・

試してみたのですが、クリックの度に本物のマウスが移動してしまいました・・・
あと、(当然ですが)クリックのたびにアクティブウィンドウが切り
替わってしまいました・・・


ちょっと違う感じなので別の解決策を検討したいと思います。

無題

Posted: 2010年7月04日(日) 15:24
by north
初投稿になります

#include<stdio.h>
long keisan(long m);

void main(void)
{
int n;
long wam;


printf("n => ");
scanf("%d", &n);
wam = keisan(n);
printf("wa = %1d\n", wam);
}

long keisan(long m)
{
int i;
long wa;
wa = 0;
for(i=m; i>=1; i--){
wa += i;
return wa;

}

}




「値を返さないコントールパスがあります」と出て、計算をしてくれません
アドバイスもらえれば幸いです

Re:無題

Posted: 2010年7月04日(日) 15:26
by シエル
long keisan(long m)
{
int i;
long wa;
wa = 0;
for(i=m; i>=1; i--){
wa += i;
return wa;

}

}

↑この関数内ではfor文の中でしかreturnで値を返してないので、
下記のように値を返す必要があります。

long keisan(long m)
{
int i;
long wa;
wa = 0;
for(i=m; i>=1; i--){
wa += i;
return wa; //式から判断するに←のリターンは不要かな

}
  return 何とか;

} 画像

無題

Posted: 2010年7月04日(日) 16:15
by north
#include<stdio.h>
long keisan(long m);

void main(void)
{
int n;
long wam;


printf("n => ");
scanf("%d", &n);
wam = keisan(n);
printf("wa = %1d\n", wam);
}

long keisan(long m)
{
int i;
long wa;
wa = 0;
for(i=m; i>=1; i--){
wa += i;


}
return(wa);
}




このようにしたら解決しました。

本当にありがとうございました

とても分かりやすかったです。