Созрел у меня ещё один вопрос, сложные у меня вопросы... =)
Я динамически создаю кнопку, храню её id и потом по id обращаюсь...
Почему после вроде как удаления кнопки, по её id, её свойства всё равно доступны!?
Ну а кнопка вроде с формы удаляется, визуально и вернуть вроде не получается, визуально...
А к свойствам могу обращаться и они ещё содержат те свойства, которые я задал ранее! Т.е. получается в памяти висят данные кнопки...
Вот только свойства доступны только для чтения, а для записи вроде уже не доступны...
Кто мне подскажет как удалить эти данные? А то за каждой динамически созданной и удалённой кнопкой будут висеть данные...
unit Unit1;
interface
uses
Vcl.Forms,
Vcl.Buttons,
Vcl.Dialogs,
System.SysUtils;
type
TForm1 = class(TForm)
procedure FormClick(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormClick(Sender: TObject);
var
id: integer;
str: string;
begin
id := integer(TSpeedButton.create(Form1));
TSpeedButton(id).Parent := Form1; // кнопка появилась
TSpeedButton(id).Width := 50;
str := str + inttostr(TSpeedButton(id).Width) + #13#10; // return 50
TSpeedButton(id).Free; // вроде удаляем
str := str + inttostr(TSpeedButton(id).Width) + #13#10; // return 50
ShowMessage(str);
{ return:
50
50 }
end;
end.