WM_SETTEXT -> gibt es noch ähnliche messages?



  • hi

    mit WM_SETTEXT erhält eine edit feld beispielsweise einen bestimmten text.
    gbit es eine nachricht,die einen text an einem bereits im edit feld vorhandenem text dran hängt?

    cYa



  • Mit einer Kombination aus:
    EM_GETSEL
    EM_SETSEL
    EM_REPLACESEL
    kann man sowas machen...

    BOOL Edit_AddText(HWND hWnd, LPCTSTR lpText)
    {
        DWORD dwStart = 0, dwEnd = 0;
        int nLen;
        nLen = GetWindowTextLength(hWnd);
        SendMessage(hWnd, EM_GETSEL, (WPARAM)&dwStart, (LPARAM)&dwEnd);
        SendMessage(hWnd, EM_SETSEL, (WPARAM)nLen, (LPARAM)nLen);
        SendMessage(hWnd, EM_REPLACESEL, (WPARAM)FALSE, (LPARAM)lpText);
        SendMessage(hWnd, EM_SETSEL, (WPARAM)dwStart, (LPARAM)dwEnd);
        return(TRUE);
    }
    // found at www.winapi.net
    


  • Ich mach das immer so:

    DWORD dwLastPos;
    
    // Setting the caret to last char pos
    SendMessage(hEditLog, EM_SETSEL, 0, -1);
    SendMessage(hEditLog, EM_GETSEL, NULL, (LPARAM)&dwLastPos);
    SendMessage(hEditLog, EM_SETSEL, dwLastPos, dwLastPos);
    
    // Text anhängen
    SendMessage(hEditLog, EM_REPLACESEL, (WPARAM)FALSE, (LPARAM)lpszText);
    

Anmelden zum Antworten