SetWindowText -> text hinzufügen



  • Hallo

    man kann ja mit SetWindowText (bei z.b. einer textbox) den inhalt ändern.
    ich möchte aber für ein loggingfenster nur text hinzufügen, nicht komplett
    überschreiben. gibt es dafür eine spezielle funktion oder eine message?

    ideal wäre es natürlich den intenen buffer selben verwalten zu können 😃

    bisher muss man ja sowas machen:

    std::vector<char> buffer;
    
    unsigned length1 = GetWindowTextLength(texbox);
    unsigned length2 = text_to_append.length();
    buffer.resize(length1 + length2 + 1);
    
    GetWindowText(textbox, &buffer[0]);
    memcpy(&buffer[length1], &text_to_append[0], length2 + 1);
    SetWindowText(textbox, &buffer[0]);
    

    das ist bei großen texten bestimmt langsam.


  • Mod

    Verwende ein Edit Control und EM_SETSEL und EM_REPLACESEL


Log in to reply