vb.net listbox控件每次要添加好多行值,但如何才能让光标一直保持在最后一行呀,也就是说让显示跟这光标

vb.net listbox控件每次要添加好多行值,但如何才能让光标一直保持在最后一行呀,也就是说让显示跟这光标,第1张

ListBox1.Items.Add("需要添加的行值")

ListBox1.SelectedIndex = ListBox1.Items.Count - 1

第二句,确保让选择项保持在最后一项,这样一直可以看到添加过程

'呵呵,xjnzhidao 回答正解。我就这个实现过程解释一下:

'多行文本框中的每行内容是以回车换行符(在VB中是vbcrlf)结束的,也就是说 vbcrlf 是行与行之间的“分割符”。

'如果要把多行文本框中的多行文本添加到列表框,也就是让列表框根据多行文本框“分割点”的个数,来确定行数。

'然后再通过循环依次把每行内容添加到ListBox中。所以“分割”的关键在于如何找出“分割点”

'VB中的 split 函数用于分割字符串,其用法为:

' 返回值=split(要被分割的文本,分割符)

'其中返回值是一个字符串数组,例如:在窗体上放一个按钮,在其单击事件中写:

Private Sub Command1_Click()

' ****************** 测试返回值为 string ************************************

Dim strTemp As String '要被分割的文本

strTemp = "北京_上海_广州_深圳"'该字符串有一定的“规律”,即每个城市名之间用 _ 隔开,所以要“分割”它们,就要以 _ 号作为“分割符”

Dim strRet() As String '返回值数组

strRet = Split(strTemp, "_") '用 _ 把strTemp 进行分割,将结果存于 strRet 数组中

MsgBox "分割后的第一个字符串是:" &strRet(0) '第一个字符串下标以0开始(勿忽略)

MsgBox "分割后的最后一个字符串是:" &strRet(UBound(strRet)) '最后一个字符串是下标上界

End Sub

'把多行文本框中的多行文本分行读入到 ListBox 中

Private Sub Form_Load()

Text1.Text = "第一行"

Text1.Text = Text1.Text &vbCrLf &"第二行"

Text1.Text = Text1.Text &vbCrLf &"第三行"

Text1.Text = Text1.Text &vbCrLf &"第四行"

Dim strRet() As String

strRet = Split(Text1.Text, vbCrLf) '用 vbcrlf 把 text1.text 进行分割,将结果存于 strRet 数组中

Dim i As Integer

For i = 0 To UBound(strRet)

List1.AddItem strRet(i)

Next i

End Sub

'split 是一个比较有用的函数,不要小看它,例如:

'1、用VB编写注册表修改程序时,有些注册表键值是一个多行字符串,去掉一行,或加入一行,都会有很大变化,这时用 split 就很方便。

'2、数据库编程中,有些时候可能我们更需要动态生成控件、生成窗口(根据数据库中表的名称或字段名称而动态生成),

' 如果把数据库表名和字段名用特定的字符分割,然后由程序循环读入,动态生成窗口和控件,这时也可用到 split

'3、XML文件读取时

'4、……


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11769421.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存