キャレットの表示・非表示          <TOP>


キャレット(カーソル)を表示・非表示します。

ShowCaret キャレットを表示する
HideCaret キャレットを非表示
 

 

'================================================================
'= キャレットの表示・非表示
'=    (HideCaret.bas)
'================================================================
#include "Windows.bi"

' キャレットを表示する
Declare Function Api_ShowCaret& Lib "user32" Alias "ShowCaret" (ByVal hWnd&)

' キャレットを非表示にする
Declare Function Api_HideCaret& Lib "user32" Alias "HideCaret" (ByVal hWnd&)

Var Shared Edit(1) As Object
Var Shared Text(1) As Object

For i = 0 To 1
    Edit(i).Attach GetDlgItem("Edit" & Trim$(Str$(i + 1))) : Edit(i).SetFontSize 14
    Text(i).Attach GetDlgItem("Text" & Trim$(Str$(i + 1))) : Text(i).SetFontSize 14
Next

'================================================================
'=
'================================================================
Declare Sub Edit2_SetFocus edecl ()
Sub Edit2_SetFocus()
    Var Ret As Long

    'キャレットを非表示
    Ret = Api_HideCaret(Edit(1).GethWnd)
End Sub

'================================================================
'=
'================================================================
Declare Sub Edit2_KillFocus edecl ()
Sub Edit2_KillFocus()
    Var Ret As Long

    'キャレットを表示
    Ret = Api_ShowCaret(Edit(1).GethWnd)
End Sub

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