module1.bas

来自「很好的教程原代码!」· BAS 代码 · 共 73 行

BAS
73
字号
Attribute VB_Name = "Module1"
' API函数声明
Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any _
) As Long
        '
' 相关常量声明
Public Const WM_USER = &H400
Public Const WM_CUT = &H300
Public Const WM_COPY = &H301
Public Const WM_PASTE = &H302
Public Const WM_CLEAR = &H303
Public Const WM_UNDO = &H304
'
Public Const EM_GETMODIFY = &HB8
Public Const EM_SETMODIFY = &HB9
Public Const EM_GETLINECOUNT = &HBA
Public Const EM_LINEINDEX = &HBB
Public Const EM_UNDO = &HC7
Public Const EM_LINEFROMCHAR = &HC9
'
Function TextModified(TBox As Control)
    TextModified = SendMessage(TBox.hwnd, EM_GETMODIFY, 0, 0&) * (-1)
End Function
'
Function TextCurLine(TBox As Control)
    TextCurLine = SendMessage(TBox.hwnd, EM_LINEFROMCHAR, -1, 0&) + 1
End Function
'
Function TextLineBegin(TBox As Control, LineNum As Integer)
    TextLineBegin = SendMessage(TBox.hwnd, EM_LINEINDEX, LineNum, 0&)
End Function
'
Sub TextClean(TBox As Control)
    Dim Ok As Long
    Ok = SendMessage(TBox.hwnd, EM_SETMODIFY, 0, 0&)
End Sub
'
Sub EditUndo(TBox As Control)
    Dim Ok As Long
    Ok = SendMessage(TBox.hwnd, EM_UNDO, 0, 0&)
End Sub
'
Sub EditCut(TBox As Control)
    Dim Ok As Long
    Ok = SendMessage(TBox.hwnd, WM_CUT, 0, 0&)
End Sub
'
Sub EditCopy(TBox As Control)
    Dim Ok As Long
    Ok = SendMessage(TBox.hwnd, WM_COPY, 0, 0&)
End Sub
'
Sub EditPaste(TBox As Control)
    Dim Ok As Long
    Ok = SendMessage(TBox.hwnd, WM_PASTE, 0, 0&)
End Sub
'
Sub EditClear(TBox As Control)
    Dim Ok As Long
    Ok = SendMessage(TBox.hwnd, WM_CLEAR, 0, 0&)
End Sub
'
Function TextLines(TBox As Control)
    TextLines = SendMessage(TBox.hwnd, EM_GETLINECOUNT, 0, 0&)
End Function
'


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?