标题:怎么 任意读取text 控件里的任意一行
只看楼主
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
得分:0 
本人有一建议:

写一程序,设一变量初值为0,打开文件逐个字符读取,遇到回车换行,变量值加1.也就是过了一行,直到你想要的那行的前一行,然后把下面一行读出来赋给一字符变量不就行了吗? 当然在读文件的程序中要加一个IF语句判断记数变量是否等于你想读的行数,当等于的时候就把所读一个个的字符赋给另一变量,直到出现下一个回车换行为止....LZ看这可行?

[此贴子已经被作者于2007-1-10 16:17:01编辑过]


这个社会太复杂。。。
2007-01-10 16:15
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
得分:0 
我还以为是文件,才看到是TEXT.上面说法适用于文件读取...不过文本框也差不多吧...逐个扫描文本框内容...

这个社会太复杂。。。
2007-01-10 16:46
zfjyyzycl
Rank: 2
等 级:论坛游民
帖 子:239
专家分:10
注 册:2006-4-15
得分:0 
以下是引用海蓝啸在2007-1-10 16:46:15的发言:
我还以为是文件,才看到是TEXT.上面说法适用于文件读取...不过文本框也差不多吧...逐个扫描文本框内容...
你说的方法我基本也会,但是我的目的不是那样做,我是想知道有没有我现在不知道的函数,可以知道text控件里的文本的行数,有没有我现在不知道的函数可以指定某个参数,去读取text控件的其中一行
2007-01-12 09:27
zsolong
Rank: 1
等 级:新手上路
威 望:1
帖 子:193
专家分:0
注 册:2006-12-15
得分:0 
没有!!!

2007-01-12 12:59
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
得分:0 

也不能一概而论说没有...这VB的世界里..我们很多东西都不知道..而并不是没有办法的..

Option Explicit
'声明将要用到的api和常数
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const EM_GETLINE = &HC4
Private Const EM_GETLINECOUNT = &HBA

Private Sub Command1_Click()
Dim lngLineIndex As Long
Dim lngLineCount As Long

lngLineCount = SendMessage(Text1.hwnd, EM_GETLINECOUNT, 0&, 0&) '得到text1中的行的总数

lngLineIndex = InputBox("请输入你要得到哪行的内容", App.Title, 1)
lngLineIndex = lngLineIndex - 1
Dim strContent(256) As Byte '定义数组来存放得到的内容
strContent(1) = 1

If lngLineIndex >= lngLineCount - 1 Then Exit Sub

Dim result As Long
result = SendMessage(Text1.hwnd, EM_GETLINE, lngLineIndex, strContent(0))

Dim txtStringContent As String

txtStringContent = StrConv(strContent, vbUnicode)

MsgBox "你要得到的是第" & lngLineIndex + 1 & "行的内容.内容是:" & vbCrLf & txtStringContent
End Sub

Private Sub Form_Load()
'设置text1的MuiliLine为True,ScrollBars为2
Text1.Text = "第一行文本:11111111" & vbCrLf _
& "第二行文本:22222222" & vbCrLf _
& "第三行文本:33333333" & vbCrLf _
& "第四行文本:44444444" & vbCrLf
End Sub


我的msn: myfend@
2007-01-12 13:22
ioriliao
Rank: 7Rank: 7Rank: 7
来 自:广东
等 级:贵宾
威 望:32
帖 子:2829
专家分:647
注 册:2006-11-30
得分:0 

楼上版主的方法好...偶用过!


/images/2011/147787/2011051411021524.jpg" border="0" />
2007-01-12 13:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-113463-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.275274 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved