以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何获取双击多行文本框中的某一行的值?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=150202)

--  作者:happyft
--  发布时间:2020/5/23 15:35:00
--  如何获取双击多行文本框中的某一行的值?

With Forms("窗口1").Controls("txtMemo")
   
For i As Integer = 0 To .Lines.Length - 1
        Messagebox.Show(.Lines(i))
   
Next
End
With


上面的代码可以显示出每一行的值,但是当鼠标在多行文本框中双击时,如何得到双击那一行的值?


谢谢!




--  作者:有点蓝
--  发布时间:2020/5/23 15:45:00
--  
双击事件

Dim k As Integer = e.Sender.SelectionStart

Dim cn As Integer = 0
For i As Integer = 0 To e.Sender.Lines.Length - 1
    cn = cn + e.Sender.Lines(i).Length
    If  cn > k Then
        msgbox(e.Sender.Lines(i))
        Return
    End If
Next
msgbox(e.Sender.Lines(e.Sender.Lines.Length - 1))

--  作者:lihe60
--  发布时间:2020/5/24 7:34:00
--  
如何设置多行文本的行间距?
--  作者:有点蓝
--  发布时间:2020/5/24 21:05:00
--  
设置不了
--  作者:HappyFt
--  发布时间:2020/5/24 21:06:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20200524204415.png
图片点击可在新窗口打开查看

如果是鼠标左键拖动选择了几行区域,如果获取这些行呢?用SelectionStart一直返都是0

谢谢!

--  作者:HappyFt
--  发布时间:2020/5/24 21:31:00
--  
多选时可以获取SelectionStart的值,但是选择多行时如何返回最后选中的区域的位置呢?
--  作者:HappyFt
--  发布时间:2020/5/24 22:07:00
--  
为何没有SelectionEnd的属性?如何获取选中区域的最末位置?
谢谢!

--  作者:有点蓝
--  发布时间:2020/5/24 22:34:00
--  
SelectionStart + SelectionLength = 选中区域的最末位置
--  作者:HappyFt
--  发布时间:2020/5/24 22:39:00
--  
但是这些属性帮助中根本就没有,不问都不知道啊!谢谢蓝老师!
--  作者:有点蓝
--  发布时间:2020/5/24 22:50:00
--  
帮助肯定有的:http://www.foxtable.com/webhelp/topics/0762.htm