hDlg:对话框的hWnd
nIDDlgItem:控键的ID
lpString:字符串数据
nMaxCount:长度

解决方案 »

  1.   

    在VB中怎么表示控件Text1的ID呢?这函数的目的就是将控件text1内容放入到lpString中,这怎么实现呢?
      

  2.   

    dim nID as long 
    nID = val(Text1.Text)
    dim server_address as string * 256     '这个定义需要注意,预留空间
    GetDlgItemText(hDlg,nID , server_address, 256)
      

  3.   

    回复人: quqxu() (  ) 信誉:100  2002-4-27 22:37:28  得分:0  
     
     
      在VB中怎么表示控件Text1的ID呢?这函数的目的就是将控件text1内容放入到lpString中,这怎么实现呢?
    ====================================================================
    用GetDlgCtrlID!
    Declare Function GetDlgCtrlID Lib "user32" Alias "GetDlgCtrlID" (ByVal hwnd As Long) As Long
      

  4.   

    Dim nID As Long
    Dim server_address As String * 256
    nID = GetWindowLong(Text1.hwnd, GWL_ID)
    Call GetDlgItemText(hDlg, nID, server_address, 256)
    MsgBox server_address
      

  5.   

    取得文本框的字符可用发送WM_GETTEXT消息的方法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 WM_GETTEXT = &HD
    Private Const WM_GETTEXTLENGTH = &HEPrivate Function GetWndText(hWnd As Long) As String
        Dim TempStr As String
        Dim TempLen As Long
        Dim Rc As Long
        
        TempLen = 260
        TempStr = String$(TempLen, 0)
        
        Rc = SendMessage(hWnd, WM_GETTEXT, TempLen, ByVal TempStr)
        
        If Rc>0 Then
            GetWndText = left$(TempStr, InStr(TempStr, Chr$(0)) - 1)
        End If
        
    End Function
      

  6.   

    【函数】
    GetDlgItemText【操作系统】
    Win9X:Yes
    WinNT:Yes【声明】
    GetDlgItemText Lib "user32" Alias "GetDlgItemTextA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String, ByVal nMaxCount As Long) As Long【说明】
    【返回值】
    【其它】
    【参数表】
        函数功能:该函数获取对话框中与控制有关的文本或标题。    函数原型:UINT GetDlgltemText(HWND hDlg,int nlDDlltem,LPTSTR IpString int nMazCount);    参数:    hDlg:指向含有控制的对话框的句柄。    nlDDlgltem:指定标题或文本将被检索的控制的标识符。    IpString:指向获取标题或文本的缓冲器的指针。    nMaxCount:指定被复制到lpString参数指向的缓冲区的字符串的最大长度。如果字符串的字符最大长度超过范围,则该字符串被截断。    返回值:如果函数调用成功,则返回值表示被复制缓冲区的字符串的长度,不包括以NULL结尾的字符串。如果函数调用失败,则返回值为零。若想获得更多错误信息,请调用GetLastError函数。    备注: GetDlgltemText函数把一个WM_GETTEXT消息发送到控制。    速查:Windows NT: 3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本:头文件:winuser.h;库文件:user32.lib;Unicode:在Windows NT上实现为Unicode和ANSI两种版本。Private Declare Function GetDlgItemText Lib "user32" Alias "GetDlgItemTextA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String, ByVal nMaxCount As Long) As Long