Изучим динамический метод создания компонентов. Иногда компоненты надо создавать динамически. Например, на форме вашей программы может находится кнопка "Дополнительно...", при нажатии на которую ваша форма должна увеличится в размерах и на ней должны появится дополнительные элементы управления. Именно такой пример мы сейчас и рассмотрим. Откройте Delphi, уменьшите форму и расположите на ней кнопку Button1. Установите свойство Caption для кнопки в "Дополнительно...".
Щелкните на кнопке Button1 и внесите в появившуюся заготовку следующий код.
Код кнопки:
procedure TForm1.Button1Click(Sender: TObject);
var
btn: TButton; //Переменная для кнопки
edt: TEdit; //Переменная для Edit'а
begin
//Увеличиваем размер формы
Form1.Height:=Form1.Height+40;
//Отключаем кнопку
Button1.Enabled:=false;
//Создаем новую кнопку
btn:=TButton.Create(Form1);
btn.Parent:=Form1;
//Устанавливаем расположение новой кнопки
btn.Top:=Form1.Height div 2+20;
btn.Left:=10;
btn.Width:=100;
btn.Height:=25;
btn.Caption:='Новая кнопка';
//Создаем новый Edit
edt:=TEdit.Create(Form1);
edt.Parent:=Form1;
//Устанавливаем расположение нового Edit'а
edt.Top:=Form1.Height div 2+20;
edt.Left:=120;
edt.Width:=100;
edt.Height:=25;
end;
Запускайте программу и нажимайте на кнопку. Форма увеличит размеры и на ней появятся два новых компонента - кнопка и Edit.
Всё на этом урок закончен.