![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Форма
Александр © (2002-07-26 16:35:00)Здравствуйте. Подскажите пожалуйста, как лучше всего решить слудеющую задачу. Запускается программа, показывается главная фора, которая тутже создает еще одн форму. Эту форму надо сделать поверх главной и других и не дать пользлвателю обращаться к другим формам приложения, пока эту не закроет.
Спаисбо.
Александр (2002-07-26 21:09:00) [1]все. Спасибо разобрался. Просто запутался.
Александр (2002-07-26 18:25:00) [2]Я так и понял, а как быть не знаю:( Неужели просто нету в Дельфи такой опции как сделать окно поверх всех остальных этой программы и запретить доступ к ним?!:(
saxon (2002-07-26 18:14:00) [3]Form5.Showmodal не даст отработать следующему за ней оператору
пока не закроется форма Form5.
И так далее ...
Александр (2002-07-26 18:09:00) [4]Попробую объяснить..просто код оченьл простой.
Вот на первой форме:
procedure TForm3.OpenNEWNEXTClick(Sender: TObject);
begin
Form5.Showmodal;
close;
end;
Вот на второй форме:
procedure TForm5.BackButton2Click(Sender: TObject);
begin
Form3.showmodal;
close;
end;
procedure TForm5.OKButton1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex = 0 then close
else begin
Form1.Memo.Lines.LoadFromFile("default.ins");
close;
end;
end;
Anatoly Podgoretsky (2002-07-26 17:51:00) [5]Александр © (26.07.02 16:41)
Не правда ваша, отображается
Но ты уже написал, что не там делал (Александр © (26.07.02 17:32))
Александр © (26.07.02 17:41)
Опять неправда ваша, хорошо закрывается, а ты не хочешь быть более конкретным, если у тебя что то не получается и ты не можешь объяснить словами, то приводить кусок проблемного кода, что бы мы не занимались телепатией и не вытаскивали из тебя клещами подробности, поверь решение будет гораздо быстрее.
saxon (2002-07-26 17:48:00) [6]И так до бесконечности :)
Александр (2002-07-26 17:41:00) [7]Опять проблемка. Как корректно сделать мледующее. Я открываю форму при помощи showmodal, на которой пользователь нажимает на кнопку, затем я должен эту форму на которой нажал он кнопку)закрыть и открыть другую. Тут у меня уже проблема. Окно не закрывается. Затем на той форме, которая открывается есть кнопка, которая должна сделать действие наоборот, т.е. обратно показать начальную форму и закрыть текущую.
Александр (2002-07-26 17:32:00) [8]TTCustomDelphiMaster: спасибо заработало. Просто я делал на OnShow.
Saxon: спасибо. Ваш метод тоже работает. Просто я сперва забыл прописать описание процедуры в классе главной формы
TTCustomDelphiMaster (2002-07-26 17:20:00) [9]Александр © (26.07.02 16:41)
Наверное в onShow делал?
Попробуй в onActivate.
saxon (2002-07-26 17:15:00) [10]извините :)
procedure StartDialog (Sender: TObject; var Done: Boolean);
!!
saxon (2002-07-26 17:14:00) [11]да вот описание процедуры в классе главной формы
public
{ Public declarations }
procedure StartPWDDialog (Sender: TObject; var Done: Boolean);
saxon (2002-07-26 17:12:00) [12]Пример:
begin
Application.Initialize;
...
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TPasswordDlg, PasswordDlg);
...
Application.OnIdle:=MainForm.StartDialog;
Application.Run;
end.
PasswordDlg - твоя форма
если так то создавать ее в MainForm.StartDialog не надо!
читайте хелп!
Александр (2002-07-26 17:02:00) [13]Не получается. Ругается в коде, чо не занет StartDialog.
И ка коплностью должен выгляждеть dpr? Там должы быть строки типа Application.CreateForm(TForm5, Form5);....?
saxon (2002-07-26 16:56:00) [14]В .dpr пишеш
Application.OnIdle:=MainForm.StartDialog;
Application.Run;
а в MainForm.StartDialog создаешь ее и showmodal!
MBo (2002-07-26 16:53:00) [15]Даже не знаю, что и сказать...
Как главная не отображается, если ты из нее создаешь вторую (не в OnCreate?)?
Александр (2002-07-26 16:41:00) [16]делал, но при этом форма главная даже не отображается:(
MBo (2002-07-26 16:36:00) [17]form2.showmodal