クロスヘアカーソル          <TOP>


クロスヘアカーソルを描画します。

ShowCursor マウスカーソルの表示・非表示

 

フォームをクリックする毎にマウスカーソルを表示・非表示します。

 

 

'================================================================
'= クロスヘアカーソル
'=    (CrossHairCursor.bas)
'================================================================
#include "Windows.bi"

' マウスカーソルの表示・非表示
Declare Function Api_ShowCursor& Lib "user32" Alias "ShowCursor" (ByVal bShow&)

Var Shared MainForm As Object

MainForm.Attach GethWnd

'================================================================
'=
'================================================================
Declare Sub HideMouse ()
Sub HideMouse()
    While Api_ShowCursor(0) >= 0
    Wend
End Sub

'================================================================
'=
'================================================================
Declare Sub ShowMouse ()
Sub ShowMouse()
    While Api_ShowCursor(1) < 0
    Wend
End Sub

'================================================================
'=
'================================================================
Declare Sub MainForm_MouseMove edecl (ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Single, ByVal y As Single)
Sub MainForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Single, ByVal y As Single)
    Cls

    Line (x, 0) - (x, GetHeight), , 1
    Line (0, y) - (GetWidth, y), , 1
    Circle (x, y), 6, 1
    Circle (x, y), 12, 1
    Circle (x, y), 16, 1
    SetWindowText "カーソル: X=" & Str$(x) & " ;  Y=" & Str$(y)
End Sub

'================================================================
'=
'================================================================
Declare Sub MainForm_Click edecl ()
Sub MainForm_Click()
    static CursorAn As Integer

    CursorAn = Not CursorAn

    If CursorAn Then
        HideMouse
    Else
        ShowMouse
    End If
End Sub

'================================================================
'=
'================================================================
Declare Sub MainForm_QueryClose edecl ()
Sub MainForm_QueryClose()
    ShowMouse
    End
End Sub

'================================================================
'=
'================================================================
While 1
    WaitEvent
Wend
Stop
End