マウスカーソルの位置をホームポジションに移動する方法

解決


ねずみ歳  2009-07-31 11:02:55  No: 142298  IP: 192.*.*.*

VB6です。
屋外で使用するノートPC用のソフトを作り問題なく動いているのですが屋外のため画面が見づらくて改善をしようと考えています。現場を見ながらの操作となるためPCに目を移した時に毎回カーソルを見失い,捜すのに苦労します。そこで例えばCtrlキーを押したらカーソルが必ず10,10などの分かっているポジションに移動するようにできれば急いでいるなかで毎回パニクることから回避できると思いました。例えば10,10に移動するコマンドなどありましたら教えてください。

編集 削除
ひよこ  2009-07-31 12:07:53  No: 142299  IP: 192.*.*.*

VB6でしたらSetCursorPosを使うしかないのかな?

「vb6 マウスカーソル   SetCursorPos」などで検索したらサンプル
もいくつかヒットしましのでそちらを参考にしてみてはいかがでしょう?

編集 削除
ねずみ歳  2009-07-31 16:01:40  No: 142300  IP: 192.*.*.*

できました。SetCursorPosというキーワードが思いつかずにいましたがこれで捜したら一発でした。下記でやってみたら画面中央に移動するのが一番見やすいようでした。  ありがとうございました。

Private Declare Function SetCursorPos Lib "user32" _
    (ByVal x As Long, ByVal y As Long) As Long

Private Sub MouseCenter()
Dim y, x

y = (Me.Top + Me.Height / 2) \ Screen.TwipsPerPixelX
x = (Me.Left + Me.Width / 2) \ Screen.TwipsPerPixelX
    Call SetCursorPos(x, y)

End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 17 Then MouseCenter
End Sub

Private Sub Form_Load()
KeyPreview = True
End Sub

編集 削除
特攻隊長まるるう  2009-07-31 18:24:57  No: 142301  IP: 192.*.*.*

> SetCursorPosというキーワードが思いつかずにいましたが
ちょwそれキーワード違う。答えという。
そこに辿り着く為に考えるのがキーワードでは?

『カーソル 位置 設定 VB6』で辿り着けたよ。
思いつかないものですか?
まぁ、いまどき VB.NET の情報が多いので、数サイト確認しないと
辿り着かない事くらいは覚悟して欲しいですが。

編集 削除