![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Форма [D7, XP]
Fleg © (2007-07-19 15:54:00)Приветствую!
Проблема с динам. созданием формы.
Нужно: форма из одного модуля по нажатию кнопки создавала и показывала другую форму, принадлежащую второму модулю
желательно указать исходный код.
Спасибо.
Fleg (2007-07-19 19:10:00) [1]Спасибо всем.
THandle (2007-07-19 19:07:00) [2]
> Fleg © (19.07.07 18:59) [34]
Нет
Да
Fleg (2007-07-19 18:59:00) [3]Если добавить форму через file - new -form и поместить её в Available Forms,
она не будет использовать ресурсы в начале работы приложения(когда 2-я форма не нужна)?
> С подобными вопросами лучше обращяйся ко мне.
на мыло?
THandle (2007-07-19 18:55:00) [4]Иначе впринципе второй Unit не нужен.
[18], но тогда ты лишаешся радости ставить компоненты на вторую форму мышом.
Делай как хочеш.
Fleg (2007-07-19 18:49:00) [5]пустой проект - проект с одной формой(по умолчанию), я так понял.
Когда выбераешь File - new - form (при уже существующей 1-ой форме)- это динамическое создание??? Иначе нельзя?
THandle (2007-07-19 18:43:00) [6]Создай пустой проект.
Выбери File -> New -> Form;
Дальше тыкай Project -> Options и перемещай Form2 из Auto-create Forms в Available Forms;
На первую форму ставь кнопку.
В событии OnClick пиши :
Form2:=TForm2.Crete(Self);
Form2.ShowModal;
Жми Save All.
Делфи тебя три раза спросит куда надо сохранять.
Запускай и радуйся жизни.
С подобными вопросами лучше обращяйся ко мне.
Fleg (2007-07-19 18:37:00) [7]Вместо этого он сохраняет в формате .pas
Fleg (2007-07-19 18:36:00) [8]
> > THandle ©
Твой проект работает.
Еще вопрос - как ты сохранил Unit2.dfm - я выделил вкладку unit2 выбрал тип dfm, сохранил, но unit2.dfm в раб. папке так и не появилось...save all тоже не помогло...может дельфи глючит?
Fleg (2007-07-19 18:31:00) [9]
> Ivolg ©
> THandle ©
Пришлите, пожалуйста, рабочий проект!!! freeeman-t@mail.ru
Ivolg (2007-07-19 18:31:00) [10][25]
При наличии, что вторая форма создана.
THandle (2007-07-19 18:30:00) [11]
> Fleg ©
Я тебе отправил правильный архивчик.
У тебя отсутствует файл .dfm второй формы.
Ivolg (2007-07-19 18:25:00) [12]Можно поиздеватся и так:
...
type
TForm2 = class(TForm)
constructor Create(AOwner: TComponent); override;
end;
...
constructor TForm2.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
end;
...
procedure TForm1.Button1Click(Sender: TObject);
var
Form2: TForm2;
begin
Form2:=TForm2.Create(self);
Form2.Show;
end;
Fleg (2007-07-19 18:15:00) [13]
> Кинь мне на мыло
сейчас скину...
Fleg (2007-07-19 18:13:00) [14]
> А как же его Unit2???
...вообще работает не как надо - unit2 программа не использует, а мне надо...
> Не видно класса TForm2
А решение каким может быть?
THandle (2007-07-19 18:09:00) [15]
> Fleg ©
Кинь мне на мыло Handle@list.ru
Просто ради интереса.
Пожалуста.
iXT (2007-07-19 18:07:00) [16]> [19] Fleg © (19.07.07 18:06)
Не видно класса TForm2
Fleg (2007-07-19 18:06:00) [17]
> Ivolg ©
Спасибо!!!
Если указывать Form2:=TForm2.Create(Self); то не работает,
если указать Form2:=TForm.Create(Self); то все как надо.
ПОЧЕМУ?????
THandle (2007-07-19 18:06:00) [18]
> Ivolg ©
А как же его Unit2???
Ivolg (2007-07-19 18:02:00) [19]procedure TForm1.Button1Click(Sender: TObject);
var
Form2: TForm;
begin
Form2:=TForm.Create(Self);
Form2.Show;
end;
?
Fleg (2007-07-19 17:59:00) [20]Во вкладке forms у меня в списке только form1 - ???