请问:如何用VB打开一个*txt文件,而且使打开后的文件中的光标处在指定行?

peiht 2008-03-09 05:32:01
我的程序中需要打开一个*txt文本文件,然后对文件中某行的内容进行手工修改。有时文件行数较多,查找需要修改的某行比较费力。因此,希望文件打开后,光标自动位于指定行的行首(最好该行同时位于顶端)。
我可以打开文件,但不知道如何控制光标位置。请各位专家指教,谢谢!
...全文
222 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
forbearORfolie 2008-03-11
  • 打赏
  • 举报
回复
写个查找的功能模块嘛,建议用richtextbox控件。
peiht 2008-03-11
  • 打赏
  • 举报
回复
谢谢jennyvenus 和northwolves ,让我研究一下你们的代码.
northwolves 2008-03-09
  • 打赏
  • 举报
回复
Shell "notepad.exe c:\1.txt", vbNormalFocus
SendKeys "{down 10}"
用户 昵称 2008-03-09
  • 打赏
  • 举报
回复
Option Explicit

Const EM_LINESCROLL = &HB6
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Private Sub Command1_Click()
Dim s As String
Dim ss As String

Open "d:\1.txt" For Input As #1
Do
Line Input #1, s
ss = ss & s & vbCrLf
Loop While Not EOF(1)
Close #1

Text1.Text = ss

End Sub

Private Sub Command2_Click()
SendMessage Text1.hwnd, EM_LINESCROLL, 0, -100000 '弄到最前面
SendMessage Text1.hwnd, EM_LINESCROLL, 0, 200 '弄到200行

End Sub
用户 昵称 2008-03-09
  • 打赏
  • 举报
回复
linescroll
用户 昵称 2008-03-09
  • 打赏
  • 举报
回复
有个笨方法,打开文件后,模拟光标键向下,api也有,就是忘了。

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧