GetTextBuf (Delphi)
Description
This example requires two edit boxes and a button. This example copies the text in an edit box into a null-terminated string, and puts this string in another edit box when you click the button on the form.
Code
procedure TForm1.Button1Click(Sender: TObject);
var
Buffer: PChar;
Size: Byte;
begin
Size := Edit1.GetTextLen; {Get length of string in Edit1}
Inc(Size); {Add room for null character}
GetMem(Buffer, Size); {Creates Buffer dynamic variable}
Edit1.GetTextBuf(Buffer,Size); {Puts Edit1.Text into Buffer}
Edit2.Text := StrPas(Buffer); {Converts Buffer to a Pascal-style string}
FreeMem(Buffer, Size);{Frees memory allocated to Buffer}
end;
{
Note: The same thing could be accomplished easier as follows.
procedure TForm1.Button2Click(Sender: TObject);
begin
Edit2.Text := Edit1.Text;
end;
Uses
- Vcl.Controls.TControl.GetTextLen ( fr | de | ja )
- Vcl.Controls.TControl.GetTextBuf ( fr | de | ja )
- Vcl.Controls.TControl.Text ( fr | de | ja )