用sendmessage呀,具体的可以看看msdn

解决方案 »

  1.   

    发送“EM_GETLINE”消息: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
    Dim TempStr As String
    Dim Rc As LongTempStr=Space$(1024)
    Rc=SendMessage(TextBox.hWnd,EM_GETLINE,行号(从0开始),Byval TempStr)
    TempStr=Left$(TempStr,Rc)
      

  2.   

    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As LongConst EM_GETLINE = &HC4Private Sub Command1_Click()
    buff = Space$(20)
    rc = SendMessage(Text1.hwnd, EM_GETLINE, 2, ByVal buff)
    Text2.Text = buff
    End Sub
      

  3.   

    利用API函数SendMessage发送EM_GETLINE消息可以获得文本框中的某一行的文本,代码如下:
    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
            
    Const EM_GETLINE = &HC4Private Type myBuff
        byte1 As Byte
        byte2 As Byte
        sBuff As String * 256
    End TypePrivate Sub Command1_Click()
        Dim buff As myBuff
        Dim astr As String
        Dim iCount As Long
        
        buff.byte1 = 255
        iCount = SendMessage(RichTextBox1.hwnd, EM_GETLINE, 0, buff)
        If iCount > 0 Then
            astr = Chr(buff.byte1) + Chr(buff.byte2) + Left$(buff.sBuff, iCount - 4)
            Debug.Print astr
        End If
    End Sub
    其中astr就是获得的RichTextBox1中第一行的文本内容。