如何实现在TextBox中如何得知Caret所在位置

灯泡烤土豆

灯泡烤土豆

2016-02-19 14:54

下面是个简单易学的如何实现在TextBox中如何得知Caret所在位置教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

  

'在form中放一个textBox两个labelConst EM_GETSEL = &HB0Const EM_LINEFROMCHAR = &HC9Const EM_LINEINDEX = &HBBPrivate Declare Function SendMessage Lib "user32" Alias "SendMessageA" _(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _lParam As Any) As LongPublic Sub GetCaretPos(ByVal hwnd5 As Long, LineNo As Long, ColNo As Long)Dim i As Long, j As LongDim lParam As Long, wParam As LongDim k As Longi = SendMessage(hwnd5, EM_GETSEL, wParam, lParam)j = i / 2 ^ 16 '取得目前Caret所在前面有多少个byteLineNo = SendMessage(hwnd5, EM_LINEFROMCHAR, j, 0) '取得前面有多少行LineNo = LineNo + 1k = SendMessage(hwnd5, EM_LINEINDEX, -1, 0)'取得目前caret所在行前面有多少个byteColNo = j - k + 1End SubPrivate Sub Form_Load()Dim LineNo As Long, ColNo As LongCall GetCaretPos(Text1.hwnd, LineNo, ColNo)Label1.Caption = LineNoLabel2.Caption = ColNoEnd SubPrivate Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)Dim LineNo As Long, ColNo As LongCall GetCaretPos(Text1.hwnd, LineNo, ColNo)Label1.Caption = LineNoLabel2.Caption = ColNoEnd SubPrivate Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim LineNo As Long, ColNo As LongCall GetCaretPos(Text1.hwnd, LineNo, ColNo)Label1.Caption = LineNoLabel2.Caption = ColNoEnd Sub

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

如何实现在TextBox中如何得知Caret所在位置

编程语言 网络编程
如何实现在TextBox中如何得知Caret所在位置

JTable中怎样获取鼠标所在位置的行数

编程语言 网络编程
JTable中怎样获取鼠标所在位置的行数

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用js取得鼠标所在位置的对象

Web开发
用js取得鼠标所在位置的对象

《黑暗之魂2》全商人所在位置详解

黑暗之魂
《黑暗之魂2》全商人所在位置详解

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

win7电脑如何修改当前所在位置?

电脑网络
win7电脑如何修改当前所在位置?

將字串传入到Windows目前窗口Cursor所在位置

编程语言 网络编程
將字串传入到Windows目前窗口Cursor所在位置

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

发表QQ空间说说怎么显示或不显示在QQ签名上?

发表QQ空间说说怎么显示或不显示在QQ签名上?

在VB中“遥控”鼠标

在VB中“遥控”鼠标
下拉加载更多内容 ↓