Anonymous 發表於 2011-12-30 20:31:59

文字讀取

上一帖因為論壇掛點 不見哩..重發!
快速讀取Text內第X行文字內容

VB 內建指令的做法:

Private Sub Command1_Click()
    Label1 = Split(Text1, vbCrLf)(0)
    Label2 = Split(Text1, vbCrLf)(1)
    Label3 = Split(Text1, vbCrLf)(2)
End Sub

透過 API 的做法:

<快速讀取 TextBox 第 N 行的資料>:(Text1之MultiLine屬性請設為True)

Const EM_GETLINE = &HC4
Const EM_LINELENGTH = &HC1
Const EM_LINEINDEX = &HBB

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 Declare Sub RtlMoveMemory Lib "KERNEL32" (lpvDest As Any, lpvSource As Any, ByVal cbCopy As Long)

Sub TB_GetLine(ByVal hWnd As Long, ByVal whichLine As Long, Line As String)
    Dim length As Long, bArr() As Byte, bArr2() As Byte, lc As Long

    lc = SendMessage(hWnd, EM_LINEINDEX, whichLine, ByVal 0&)
    length = SendMessage(hWnd, EM_LINELENGTH, lc, ByVal 0&)
    If length > 0 Then
        ReDim bArr(length + 1) As Byte, bArr2(length - 1) As Byte
        Call RtlMoveMemory(bArr(0), length, 2)
        Call SendMessage(hWnd, EM_GETLINE, whichLine, bArr(0))
        Call RtlMoveMemory(bArr2(0), bArr(0), length)
        Line = StrConv(bArr2, vbUnicode)
    Else
        Line = ""
    End If
End Sub

Private Sub Command1_Click()
    Dim S As String
    Call TB_GetLine(Text1.hWnd, 5, S)
    ' 傳回值 S 即等於第 5 行的資料
    ' TextBox 的行次是從 0 起算。
    MsgBox S
End Sub

xxx55821 發表於 2011-12-30 20:55:53

看一下....@@"

xxx55821 發表於 2011-12-30 20:59:03

我ㄉ...智商跟知識沒到那...跨謀(=冏=)....(悶~

a133a1339 發表於 2011-12-30 21:00:19

v0001123 發表於 2011-12-30 21:39:00

文字讀取!!?是啥ㄋ~

0975482118 發表於 2011-12-30 22:01:37

看看冰楓大 又給了什麼好康的:lol   感謝你^^

angus0623 發表於 2012-1-3 15:35:12

謝謝分享!參考看看~~~~~

dog123 發表於 2012-1-4 18:35:13

不知道是如何讀取文字txt??

ken40810 發表於 2012-1-23 00:43:39

讀取什麼文字?

a2318960 發表於 2012-1-23 01:04:40

1# 冰楓   新的外掛?   我來看看囉~~~

a94351464325 發表於 2012-1-30 12:39:44

什麼文字讀取 是你在txt寫東西 程式讀取嗎?

88888888 發表於 2012-2-1 11:48:34

zaqzaq001 發表於 2012-2-3 20:07:58

小夜0v0 發表於 2012-2-19 20:13:16

sky4011 發表於 2012-2-19 20:42:41

頁: [1] 2 3 4 5 6
查看完整版本: 文字讀取