HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
1113
ゆー (投稿者削除)3未解決


ゆー

リンク

2017/11/13(Mon) 09:55:56|NO.81837

この記事は投稿者により削除されました。
2017/11/13(Mon) 20:43:13



この記事に返信する


f

リンク

2017/11/13(Mon) 11:01:14|NO.81838

前回のを覚えといて、差を取れば良いんじゃね?



Makoto

リンク

2017/11/13(Mon) 13:40:09|NO.81839

直接移動量を取得する方法があるかはわかりませんが、
要は端に行っても止まらなければいいわけで、

*test title "X:" + ginfo_mx + " Y:" + ginfo_my if ginfo_mx = 0 { mouse ginfo_dispx - 1 , ginfo_my } else { if ginfo_mx = ginfo_dispx - 1 { mouse 0 , ginfo_my } } if ginfo_my = 0 { mouse ginfo_mx , ginfo_dispy - 1 } else { if ginfo_my = ginfo_dispy - 1 { mouse ginfo_mx , 0 } } wait 1 goto *test
こんな方法でマウスを動かし続けられるようにすれば
後は f さんの言う通り前回との差で移動量を出せるんじゃないでしょうか。



Makoto

リンク

2017/11/14(Tue) 11:57:25|NO.81842

なんで消しちゃったんだろう、面白いテーマだと思ったんだけど。
役に立つかどうかはわかりませんが、せっかく作ったので載せときます。

マウスの移動量を取得するプログラム

pre_x = ginfo_mx // 前回の座標 pre_y = ginfo_my cen_x = ginfo_winx / 2 // ウインドウの中心 cen_y = ginfo_winy / 2 *test if ginfo_mx = 0 { // 端まで来たら mouse ginfo_dispx - 1 , ginfo_my // 反対側に pre_x += ginfo_dispx // 前回の座標を1画面分ずらす } else { if ginfo_mx = ginfo_dispx - 1 { mouse 0 , ginfo_my pre_x -= ginfo_dispx } } if ginfo_my = 0 { mouse ginfo_mx , ginfo_dispy - 1 pre_y += ginfo_dispy } else { if ginfo_my = ginfo_dispy - 1 { mouse ginfo_mx , 0 pre_y -= ginfo_dispy } } mov_x = ginfo_mx - pre_x // 前回との差 mov_y = ginfo_my - pre_y pre_x = ginfo_mx // 前回の座標を更新 pre_y = ginfo_my redraw 0 // 移動量を表示 color 255 , 255 , 255 boxf color 0 , 0 , 0 pos 0 , 0 mes "X MOVE:" + mov_x + " Y MOVE:" + mov_y line cen_x , cen_y , cen_x + mov_x , cen_y + mov_y redraw 1 wait 5 // wait値で感度(と言うのかな)の調節ができる goto *test



ONION software Copyright 1997-2023(c) All rights reserved.