Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - String bei Cursorpostion einfügen


M.Mü - Sa 14.01.06 02:11
Titel: String bei Cursorpostion einfügen
Hallo,

ich seh wohl den Wald vor Bäumen nicht ...

Gibt es einen Befehl, mit deren Hilfe ich im RichEdit einen String bei der Cursorposition einfügen kann? ... ähnlich wie im NotePad die Datum/Uhrzeit.

Habe es im Moment folgendermaßen realisiert:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.Button1Click(Sender: TObject);
var Line: string;
begin
 Line := RichEdit1.Lines[RichEdit1.CaretPos.Y];
 Insert('test',Line,RichEdit1.CaretPos.X+1);
 RichEdit1.Lines[RichEdit1.CaretPos.Y] := Line;
end;


VG M.Mü

Moderiert von user profile iconChristian S.: Delphi-Tags hinzugefügt
Moderiert von user profile iconChristian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Sa 14.01.2006 um 01:16


alias5000 - Sa 14.01.06 02:21

Wie wärs mit:

Delphi-Quelltext
1:
2:
RichEdit1.SelLength := 0//Damit man keinen markierten Text überschreibt
RichEdit1.SelText := Line;


Blackheart666 - Sa 14.01.06 10:22


Delphi-Quelltext
1:
RichEdit1.SelText:='Mein String';                    


M.Mü - Di 17.01.06 13:23

Habt Dank für die Hilfe.

Bin nach einigem Suchen im Forum auf die Idee gekommen, das ganze mittels Tastensimulation (keybd_event) zu realisieren.

Das hat zwei entscheidende Vorteile:

1. Der Text wird ohne irgendein Zutun an die Cursorposition eingefügt.
2. es kann mit der Undo-Funktion des RichEdit rückgängig gemacht werden.