text in cedit einfügen



  • wollte mir für ein buchprojekt nur schnell ein hilfsprogramm schreiben, um mich nicht wieder in so'ner zettelwirtschaft zu verlieren - zwei listenelemente, einmal kapitel, einmal die jeweiligen unterthemen, dazu ein simples von cedit abgeleitetes editor-fenster für anmerkungen zum jeweiligen punkt und das ist das problem.
    wie fügt man in ein mehrzeiliges CEdit-element text ein? auslesen mittels getlinecount und getline funktioniert, aber 'ne simple insertline-methode oder sowas find ich nicht. wenn ich bsp zwanzig cstring-objekte habe, jedes eine zeile des textes(ausgelesen mit getline)enthält, wie krieg ich die da wieder rein?
    danke.



  • Hallo,

    Mit SetWindowText(...) Text einfügen, eine neue Zeile mit "\r\n". 🕶



  • danke, funktioniert aber nicht, da setwindowtext den bestehenden inhalt überschreibt und nicht nur einfach den string anhängt. ich habe eine liste mit cstring-objekten und nicht nur ein cstring-objekt. kann man die einfach vorher zu einem großen string zusammenfügen oder gibt's da größenbeschränkungen wie bei pascal? dann würde es funtionieren.



  • Wie wäre es den Inhalt mit GetWindowText auslesen und dann deinen neuen String an den herausgelesenen String dranhängen und dann wieder mit SetWindowText(..) einfügen.

    // get the text of IDC_MYEDIT
    CString str = "";
    CWnd* pWnd = GetDlgItem(IDC_MYEDIT);
    pWnd->GetWindowText(str);
    
    CString strNeu = "Das kommt noch dazu";
    str += strNeu;
    
    pWnd->SetWindowText(str);
    

    gruß,

    Stalin



  • Genau! 😃



  • danke für die mühe, hab aber mittlerweile die klasse cricheditctrl gefunden und da funktioniert alles wunderbar und man kann den text auch noch formatieren. was will man mehr?


Anmelden zum Antworten