TStringGrid -> Event zu Zelle bearbeiten



  • Hallo,

    ich suche eine Möglichkeit, um den Text welcher in eine Zelle eingegeben wurde, nach der Eingabe zu formatieren.
    Also der Nutzer gibt zum Beispiel "ABEFABEF" in eine Zelle ein und ich will dann nachdem der Nutzer Enter drückt bzw. die Zelle wechselt diese Eingabe dann formatieren.

    Also analog zu:

    TStringGrid::GetEditText(TObject *Sender, int ACol, int ARow, AnsiString &Value)
    

    Nur das ich das nach dem editieren brauche und nicht zuvor. 🙂

    Vielen Dank
    bye Saxony



  • Selbst implementieren oder investieren um ein Grid welches dann kann zu kaufen -> www.tmssoftware.de TADVStringGrid



  • Hallo,

    wenn ich

    TStringGrid::Click(TObject *Sender)
    

    nehme, gehts fast so wie ich es will.

    Kann ich zur Laufzeit (per Code) eine Zelle im Stringgrid markieren ?

    bye Saxony



  • Hallo

    siehe TStringGrid::Row bzw. ::Col in der BCB-Hilfe.

    bis bald
    akari



  • Aha,

    Row und Col sind auch schreibbar. 😮
    Habe diese bisher nur gelesen. 🙄

    Naja im Endeffekt ist es ganz einfach.
    Ich fange mit OnKeyPress ab ob Enter, left, right, up oder down gedrückt wurde und änder dann den Text.

    bye Saxony



  • Tja, und wenn der Nutzer duch den Text scrollt, weil er etwas ändern will??



  • Hallo,

    alle (!) Zellen haben das gleiche Format.
    D.h. wenn er eine Zelle passiert wird die eh ins richtige Format gebracht.

    Zudem habe ich festgestellt:

    1. left und right als key geht eigentlich gar nicht weil die im editmode der zelle als navigation funktionieren

    2. up und down in TStringGrid::OnKeyPress gar nicht berücksichtigt werden 😕

    3. der Abschluss der Zelleneingabe mit enter funktioniert aber einwandfrei

    bye Saxony


Anmelden zum Antworten