RAD Studio VCL Reference
|
Returns the length of the control's text.
function GetTextLen: Integer;
__fastcall int GetTextLen();
Call GetTextLen to find the length of the control's text. This is the size needed for a text buffer to be used by the GetTextBuf method.
C++ Examples:
/* 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 the user clicks the button on the form. */ #include <memory> //for STL auto_ptr class void __fastcall TForm1::Button1Click(TObject *Sender) { int Size = Edit1->GetTextLen(); //Get length of string in Edit1 Size++; //Add room for null character // Char *Buffer = new Char[Size]; //Creates Buffer dynamic variable std::auto_ptr<Char> Buffer(new Char[Size]); Edit1->GetTextBuf(Buffer.get(),Size); //Puts Edit1->Text into Buffer Edit2->Text = Buffer.get(); } /* Note: the same thing could be accomplished more simply as follows: */ void __fastcall TForm1::Button2Click(TObject *Sender) { Edit2->Text = Edit1->Text; }
Delphi Examples:
{ 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 the user clicks the button on the form. } 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 more simply as follows: } procedure TForm1.Button2Click(Sender: TObject); begin Edit2.Text := Edit1.Text; end;
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
|
What do you think about this topic? Send feedback!
|