189 8069 5689

vb点虐 代码显示行号的简单介绍

VB点虐 怎么显示RichTextBox的行数、列数和总行数啊?

求行:

目前创新互联已为1000多家的企业提供了网站建设、域名、虚拟空间、网站托管、企业网站设计、道里网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

RichTextBox1.GetLineFromChar(RichTextBox1.SelStart)+1

这个代码呢,我的理解呢,是获取在selstart的地方的行数。一般来讲selstart的地方都是光标的地方,然后会给你返回line。不过返回的时候要自己加1。不是很懂这个语法,有懂得可以教我一下

以上是求行数。

求列:

For i = 0 To RichTextBox1.SelStart

If RichTextBox1.GetLineFromChar(RichTextBox1.SelStart) - RichTextBox1.GetLineFromChar(RichTextBox1.SelStart - i) 0 Then Exit For

j = j + 1

Next i

这个for循环呢,讲的是检查这一行光标前有多少个列,然后用J输出列的个数。

因为VB6.0没有RichTextBox1.GetFirstCharIndexOfCurrentLine这种语法。所以扮陪就得自己模拟这个过程。

具体怎么检查的呢,首先将 i 从0循环到光标处,

如果 【光标字符数】处的行数 减去 【光标字符数减去 i 个字符数】处的行数小于0了,我写了个不为零。但此时写小于零就可以。那么代表着换行了,同时也代表着光标到上一行之间有多少字。用j存储循环次数,得出正歼对应列数。(我们中文习惯是叫第一列,但程序实际上是第零列,但在循环的时候就注意到并解决这个问题了)

如果你替换写法,例如

If RichTextBox1.GetLineFromChar(RichTextBox1.SelStart) - RichTextBox1.GetLineFromChar(RichTextBox1.SelStart + i) 0 Then Exit For

j = j + 1

Next i

这个厅清蠢 J 就对应着光标到该行结尾有几个字符了,如果有需要可以使用,但一般不需要。

那么就像上面说的那样,行列都求出来了,最后用事件和TEXT或者caption表现出来就好了

至于说总行数

RichTextBox1.GetLineFromChar(Len(RichTextBox1.Text)) + 1

通过对最后一个字符的位置(总长度)的行来判断呗,不过也得加一。

VB.NET中,如何获得文本框中可见区域的首行的行号?

通过向文本框没如传递EM_LINEFROMCHAR消息枯禅启可以袭芦得到光标所在的行号:

contst

EM_LINEFROMCHAR

=

0xC9

Dim

I

as

Long

I

=

SendMessage(textBox1.Hwnd,

EM_LINEFROMCHAR,

-1,

0)

怎样在VB代码中增加行号

1)在VB代码前添加行号需借助第三方控件或自己添加在代码行前。

Private Sub Form_Load()

0   Dim cnn As New Connection

1   Dim rs As New Recordset

2   Dim sql As String

3   Dim ARR

5   拦喊宏cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\wdOld.mdb;Persist Security Info=False"

6   sql = "select 故障名称 渗橡from guzhang_bm"

7   rs.Open sql, cnn

8   Combo1.Text = "故障名称"

9   Do While Not rs.EOF

10      Combo1.AddItem rs("故障名称")

11      rs.MoveNext    '打开表

12  Loop

13  rs.Close

14  cnn.Close

End Sub

用来识别一行代码。行号可以是任何数值的组合,在使用行号的模块内,该组合是唯一的。行号必须在从一列开始。

2)VB的集成IDE编程窗口的工具栏中有行号和列号显示简册。


文章名称:vb点虐 代码显示行号的简单介绍
链接URL:http://cdxtjz.cn/article/ddpgsjg.html

其他资讯