Public Declare Function SendMessageByRefW Lib "USER32" Alias "SendMessageW" _ (ByVal hwnd As Long, ByVal wMsg As Long, ByRef wParam As Long, ByRef lParam As Long) As Long Private Sub TxtFile_Click() Dim lSelStPos As Long '选择起始位置 Dim lSelEdPos As Long '选择结束位置 ' DispMsg "Position at " & TxtFile.SelStart SendMessageByRefW TxtFile.hwnd, EM_GETSEL, lSelStPos, lSelEdPos DispMsg "Position at " & lSelEdPos & " " & lSelEdPos End Sub 这样可以取鼠标位置,随便输入汉字文本,鼠标点击可以看到一个汉字是占了2个字符还是1个。