VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: emptyname

如何在richtextbox中转到某行

[复制链接]

0

主题

14

帖子

6.00

积分

新手上路

Rank: 1

积分
6.00
发表于 2021-3-11 21:45:01 | 显示全部楼层
如果你的回车都是硬回车,可以考虑使用正则表达式对象简化操作。

我编的程序的目的是删除空行以及含有空格的空行:
Private Sub Command1_Click()
Dim temp As String, s() As String, i As Long
temp = RichTextBox1.Text
s = Split(temp, vbCrLf)
For i = 0 To UBound(s)
If Len(Trim(s(i))) = 0 Then s(i) = ""
Next
temp = Join(s, vbCrLf)
While InStr(temp, vbCrLf & vbCrLf) > 0
temp = Replace(temp, vbCrLf & vbCrLf, vbCrLf)
Wend
RichTextBox1.Text = temp
End Sub
回复

使用道具 举报

1

主题

7

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
 楼主| 发表于 2021-3-11 22:00:01 | 显示全部楼层
talent00168 你好,上面的代码会不会把richtextbox里面的文本格式删除掉?好像会把richtextbox里面的文本格式删除掉
回复

使用道具 举报

0

主题

14

帖子

6.00

积分

新手上路

Rank: 1

积分
6.00
发表于 2021-3-11 22:15:01 | 显示全部楼层
如果都是硬回车,可以这样定位:
Private Sub Command1_Click()
Randomize
Dim n As Long, s() As String
n = CLng(InputBox("光标指到第几行", "info", Int(Rnd * 100))) - 1
s = Split(RichTextBox1.Text, vbCrLf)
ReDim Preserve s(n - 1)
n = Len(Join(s, vbCrLf)) + Len(vbCrLf)
RichTextBox1.SetFocus
RichTextBox1.SelStart = n
End Sub
回复

使用道具 举报

1

主题

7

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
 楼主| 发表于 2021-3-11 22:30:01 | 显示全部楼层
talent00168 你好  谢谢你可以定位了  真是谢谢你 高手就是不一样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表