Home » Tipps & Tricks » Komponenten » TRichEdit/TMemo/TEdit » Ränder von mehrzeiligen Textfeldern setzen/lesen
Ränder von mehrzeiligen Textfeldern setzen/lesen
Dieser Artikel zeigt, wie Sie die Randbegrenzungen mehrzeiliger Textfelder, wie z.B. einer TMemo oder TRichEdit-Komponente lesen und setzen können.Für diese Aufgaben sind im Wesentlichen zwei Botschaften zuständig: EM_GETRECT zum Lesen und EM_SETRECT zum Setzen. Diese müssen an das Handle des Textfeldes gesendet werden.Im folgenden Beispiel wird zunächst das benutzbare Rechteck einer TMemo-Komponente ermittelt und danach der linke und rechte Rand jeweils auf einen Abstand von 20 Pixelgesetzt. Die obere und untere Grenze bleibt unberührt:
procedure TForm1.Button1Click(Sender: TObject); var R: TRect; begin Memo1.Perform(EM_GETRECT, 0, LongInt(@R)); R.Left:=20; R.Right:=Memo1.ClientWidth - 20; Memo1.Perform(EM_SETRECT, 0, LongInt(@R)); Memo1.Refresh; end;