![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Диалоги [D5, WinXP]
Галинка © (2004-10-06 11:56:00)Доброго всем времени суток...
Мне надо выкинуть один диалог из автокреата. Как его потом использовать?
Заранее спасибо всем, кто ответит.
Amoeba (2004-10-06 12:17:00) [21]Уже написан. Смотри
> Amoeba © (06.10.04 12:00) [2]
Галинка (2004-10-06 12:16:00) [22]Может кто-нибудь напишет все таки весь синтаксис конструкции...
begin...end (2004-10-06 12:13:00) [23]
> [6] Галинка © (06.10.04 12:10)
ShowModal - потом, в защищённом блоке - лучше не надо.
Amoeba (2004-10-06 12:12:00) [24]
> TUser © (06.10.04 12:06) [5]
А зачем так сложно? На фига нужны эти проверки и обниление? Ведь это же диалог - модальная форма! При модальном показе 2-й экземпляр (если программер не полный идиот и сам не будет себе подкладывать грабли) создать не должно приходить в голову.
Галинка (2004-10-06 12:10:00) [25]А ShowModal уже потом делать?
для TUser: Может в защищеном блоке?
TUser (2004-10-06 12:06:00) [26]Не важно, как его зовут. Эту форму выкинь, а создавай так
if not assigned(...) then
...:=... .Create();
Уничтожай через FreeAndNil
begin...end (2004-10-06 12:05:00) [27]
> [3] Галинка © (06.10.04 12:04)
От этих пояснений что-то сильно меняется?
Галинка (2004-10-06 12:04:00) [28]Пояснения....
Диалог называется IntervalsDlg:TIntervalsDlg, он задает интервалы, в которых расчитываются значения.
Amoeba (2004-10-06 12:00:00) [29]
> Галинка © (06.10.04 11:56)
Советую выкинуть все. А создавать и использовать примерно так:
MyDialog := TMyDialog.Create;
try
MyDialog.ShowModal;
finally
MyDialog.Free;
end;
или
MyDialog := TMyDialog.Create;
try
if MyDialog.ShowModal = mrOk then
begin
...
end;
finally
MyDialog.Free;
end;
begin...end (2004-10-06 11:56:00) [30]TForm.Create(...), предварительно проверив, не создан ли он.