今、DXライブラリを使ってプログラムを作っています。
そこで質問なのですが、マウスを左クリックしたときにその押された場所に図形を表示したいのですが一回クリックされたらその場所にずっと表示させることはできますか?
今作ったプログラムでは押し続けている場合のみ、そこに表示されます。
左クリックして離すと表示されなくなって、困ってます(><;)
↓のようなプログラムで指定した座標内で左クリックしたら赤い○を表示するように書いたつもりです。
MouseInput = GetMouseInput() ;
if( MouseX<=240&&MouseX>=120&&MouseY<=240&&MouseY>=120&&( MouseInput & MOUSE_INPUT_LEFT ) == 1 )
{
DrawString( 130 , 130 , "○" , circle_red);
}
ご指南お願いします(>人<)
マウス操作について
-
白い時空
Re:マウス操作について
こんな感じでどうですか?
MouseInput = GetMouseInput();
static int flag=0;
if( MouseX<=240&&MouseX>=120&&MouseY<=240&&MouseY>=120&&( MouseInput & MOUSE_INPUT_LEFT ) == 1 ){
flag = 1;
}
if(flag==1){
DrawString( 130 , 130 , "○" , circle_red);
}-
gyt
Re:マウス操作について
皆さんありがとうございました。
フラグを立てることで、解決しました(^^)ノ
ただパコネコさんの
>その時の座標を保存してみては?
>それかマス目を作っておくとか…
というのがよく意味が分からずにいます・・・orz
もし良かったらどういう意味か、またどのように考えればいいかなど、教えて欲しいです(><)
お願いします(-人-)
フラグを立てることで、解決しました(^^)ノ
ただパコネコさんの
>その時の座標を保存してみては?
>それかマス目を作っておくとか…
というのがよく意味が分からずにいます・・・orz
もし良かったらどういう意味か、またどのように考えればいいかなど、教えて欲しいです(><)
お願いします(-人-)
-
パコネコ
Re:マウス操作について
どうやら私の勘違いだったようですが…
たとえば
>DrawString( 130 , 130 , "○" , circle_red);
これを
a=Mousex;
b=Mousey;
DrawString( a , b , "○" , circle_red);
こんな感じ…Mousexってマウスの座標であってました?
ボタンを押したときにaとbの値に代入見たいなのです。
マス目のほうは、配列でその配列の座標内でボタンが押されたらその配列の値を1にして
描写のときに1なら描写とすればできると思いました。
if(nannka[a]==1)DrawString( a , b , "○" , circle_red);
混乱させてしまってすいませんでした。
たとえば
>DrawString( 130 , 130 , "○" , circle_red);
これを
a=Mousex;
b=Mousey;
DrawString( a , b , "○" , circle_red);
こんな感じ…Mousexってマウスの座標であってました?
ボタンを押したときにaとbの値に代入見たいなのです。
マス目のほうは、配列でその配列の座標内でボタンが押されたらその配列の値を1にして
描写のときに1なら描写とすればできると思いました。
if(nannka[a]==1)DrawString( a , b , "○" , circle_red);
混乱させてしまってすいませんでした。
-
gyt
Re:マウス操作について
なるほど!!
パコネコさん、丁寧に教えてくださりありがとうございます。
そういう考え方もできますね。
参考にさせてもらいます。
皆さん、丁寧な解説ありがとうございました。
パコネコさん、丁寧に教えてくださりありがとうございます。
そういう考え方もできますね。
参考にさせてもらいます。
皆さん、丁寧な解説ありがとうございました。