Tab-Taste im RichEdit per Code auslösen



  • Hi,

    ich möchte per Code im RichEdit1 einen Tabulatorsprung machen. Wie geht das? Einfach \t ausgeben, geht ja nicht, man muss es ja irgendwie "aktivieren"!?

    Achja, und wie ich nen TAB zurückspringen kann, wäre ich auch froh, in Erfahrung zu ziehen!

    Vielen Dank schonma.



  • Hast du die Eigenschaft TRichEdit::WantTabs auf true gesetzt?
    Damit werden Tab-Sprünge innerhalb des RichEdit aktiviert.



  • Ja, ich habe WantTabs. Aber du hast meine Frage nciht verstanden. Ich möchte zum Beispiel durch einen Klick auf einen Button den Mauscursor um einen TAB nach vorn bewegen. (Der einzige Unterschied ist halt nur, dass ich nicht den Tabulator meiner Tastatur betätige, sondern den Button...) Jetzt suche ich den Code für die ButtonClick-Routine, damit sich der Cursor wie ein Tab nach vorn bewegt.



  • dann füge nach der aktuelle Cursorposition doch einen Tab ein. so in etwa:

    AnsiString Tab;
    
    // nen tab erzeugen
    Tab.sprintf("\t");
    
    RichEdit1->Lines->Add(Tab);
    


  • und wie geh ich nen Tab zurück 🙂 mit - "\t" 🙂 ?



  • Was soll denn das sprintf-Geeier? 😉
    Und Add() ist doch auch Murks.

    RichEdit1->SelText = "\t";
    

    Das fügt einen Tab an der Cursorposition ein. Zum Entfernen muss halt dieses "\t" wieder aus dem Text gelöscht werden, siehe AnsiString-Methoden.



  • naja bin nicht auf die geniale idee mit SelText gekommen... 😃



  • Selbst wenn, ein

    AnsiString Tab = "\t";
    

    hätte es doch auch getan, oder? Über das sprintf komme ich einfach nicht drüber weg. 😉


Log in to reply