Здравствуйте!
Помогите, нужно вызвать любую форму проекта, получив ее имя из переменной.
У меня есть базовый класс формы, в нем определяю переменную с именем таблицы, нажав кнопку редактировать это имя берется как имя формы+слово Edit и
должна вызываться форма для редактирования записи с эти именем .
Как вызвать нужную форму
Модератор: Модераторы
Код: Выделить всё
uses
Unit1;//where is TForm1
var
EditForm:TForm1;
procedure TForm2.EditButtonClick(Sender: TObject);
begin
EditForm:=TForm1.Create(Self);
end;
Спасибо. Может быть.
А можно, что то типа такого
NameForm:='SprKnig';
(NameForm).Show;
Наверное уже сам начинаю догадываться, надо найти форму по имени. А потом вызвать ее.
А как ее найти, подскажите пжста.
А можно, что то типа такого
NameForm:='SprKnig';
(NameForm).Show;
Наверное уже сам начинаю догадываться, надо найти форму по имени. А потом вызвать ее.
А как ее найти, подскажите пжста.
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
Slava1970, а зачем? форма-то, по сути, одна.
Формы вызова разные, а вызывать буду разные EditForm, для разных таблиц, чтобы не писать
одно и тоже каждый раз FormEditSprKnigi.Show; или FormEditSprAutor.Show; и процедуры
прописывать, одним разом в корне в базовом классе. Может можно и по другому...
одно и тоже каждый раз FormEditSprKnigi.Show; или FormEditSprAutor.Show; и процедуры
прописывать, одним разом в корне в базовом классе. Может можно и по другому...
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
Все равно же придется писать формы.
Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
var
f:TForm;
begin
f:=tform(application.FindComponent('Form2'));
f.Show;
end;Но лучше написать свою регистрацию и поиск форм
Спасибо! А формы конечно придется писать, только кода немного меньше будет.
