IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Динамическое создание формы
сообщение
Сообщение #1


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Рузультат слудеющих действий будет подходить под критерий "Динамически созданная форма" ?

Создаем стандартное приложение Delphi. Имеем Form1 in Utin1.pas.
Добваляем к проекту еще одну форму (Form2 in Unit2.pas)
На вторую форму кидам с панелей всякую всячину (лейблы, эдиты, стринггриды итд)

Из Project1.dpr удаляем
Application.CreateForm(TForm2, Form2);


На Form1 кидаем кнопку, в обработчике нажатия на которую пишем следующее:

procedure TForm1.Button1Click(Sender: TObject);
var
Form2: TForm2;
begin
Form2 := TForm2.Create(Application);
Form2.ShowModal;
end;


Созданная таким образом форма является динамической ? Почему меня интересует этот вопрос. На соклько я понял надо это делать по другому, все руками.Самому создавать юнит, руками описывать там класс формы, писать какие компоненты будут на форме, в конструкторе класса регестрировать эти компоненты, задвать их свойства...


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


hiv, я так и делаю, только боюсь как бы препод не начал возмущаться, а программа не маленькая и форм много (приложение для работы с БД) и везде все писать вручную типа


var
f: TForm;
Panel1, ... Panel5: TPalen;
StrGrdStore: TDBGrid;

...

begin
F := TForm.Create(Application);
wirh F do begin
Top := 10;
//...
Panel1 := TPanel.Create(f);
with Panel1 do begin
Parent := F;
// ... всякие настройки
end;
end;
...
end;


А он ведь имеено так на лекции объяснял, хорошо что меня там не было smile.gif) Я бы сильно разозлился smile.gif

Я просто не вижу никакого смысла в этом гемморое ... Не дай Бог переделывать рпидется !fire.gif



--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Профи
****

Группа: Пользователи
Сообщений: 705
Пол: Мужской

Репутация: -  20  +


Цитата(klem4 @ 21.11.2006 15:43) *

Не дай Бог переделывать рпидется !fire.gif

Мне кажется придется.. Чтобы немного упростить переделку можно сделать "View as text" на форме, там все уже почти красиво.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 8:49
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name