Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];
ВнизФорма Найти похожие ветки
← →
Александр (2002-07-26 16:35) [0]Здравствуйте. Подскажите пожалуйста, как лучше всего решить слудеющую задачу. Запускается программа, показывается главная фора, которая тутже создает еще одн форму. Эту форму надо сделать поверх главной и других и не дать пользлвателю обращаться к другим формам приложения, пока эту не закроет.
Спаисбо.
← →
MBo (2002-07-26 16:36) [1]form2.showmodal
← →
Александр (2002-07-26 16:41) [2]делал, но при этом форма главная даже не отображается:(
← →
MBo (2002-07-26 16:53) [3]Даже не знаю, что и сказать...
Как главная не отображается, если ты из нее создаешь вторую (не в OnCreate?)?
← →
saxon (2002-07-26 16:56) [4]В .dpr пишеш
Application.OnIdle:=MainForm.StartDialog;
Application.Run;
а в MainForm.StartDialog создаешь ее и showmodal!
← →
Александр (2002-07-26 17:02) [5]Не получается. Ругается в коде, чо не занет StartDialog.
И ка коплностью должен выгляждеть dpr? Там должы быть строки типа Application.CreateForm(TForm5, Form5);....?
← →
saxon (2002-07-26 17:12) [6]Пример:
begin
Application.Initialize;
...
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TPasswordDlg, PasswordDlg);
...
Application.OnIdle:=MainForm.StartDialog;
Application.Run;
end.
PasswordDlg - твоя форма
если так то создавать ее в MainForm.StartDialog не надо!
читайте хелп!
← →
saxon (2002-07-26 17:14) [7]да вот описание процедуры в классе главной формы
public
{ Public declarations }
procedure StartPWDDialog (Sender: TObject; var Done: Boolean);
← →
saxon (2002-07-26 17:15) [8]извините :)
procedure StartDialog (Sender: TObject; var Done: Boolean);
!!
← →
TTCustomDelphiMaster (2002-07-26 17:20) [9]Александр © (26.07.02 16:41)
Наверное в onShow делал?
Попробуй в onActivate.
← →
Александр (2002-07-26 17:32) [10]TTCustomDelphiMaster: спасибо заработало. Просто я делал на OnShow.
Saxon: спасибо. Ваш метод тоже работает. Просто я сперва забыл прописать описание процедуры в классе главной формы
← →
Александр (2002-07-26 17:41) [11]Опять проблемка. Как корректно сделать мледующее. Я открываю форму при помощи showmodal, на которой пользователь нажимает на кнопку, затем я должен эту форму на которой нажал он кнопку)закрыть и открыть другую. Тут у меня уже проблема. Окно не закрывается. Затем на той форме, которая открывается есть кнопка, которая должна сделать действие наоборот, т.е. обратно показать начальную форму и закрыть текущую.
← →
saxon (2002-07-26 17:48) [12]И так до бесконечности :)
← →
Anatoly Podgoretsky (2002-07-26 17:51) [13]Александр © (26.07.02 16:41)
Не правда ваша, отображается
Но ты уже написал, что не там делал (Александр © (26.07.02 17:32))
Александр © (26.07.02 17:41)
Опять неправда ваша, хорошо закрывается, а ты не хочешь быть более конкретным, если у тебя что то не получается и ты не можешь объяснить словами, то приводить кусок проблемного кода, что бы мы не занимались телепатией и не вытаскивали из тебя клещами подробности, поверь решение будет гораздо быстрее.
← →
Александр (2002-07-26 18:09) [14]Попробую объяснить..просто код оченьл простой.
Вот на первой форме:
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;
← →
saxon (2002-07-26 18:14) [15]Form5.Showmodal не даст отработать следующему за ней оператору
пока не закроется форма Form5.
И так далее ...
← →
Александр (2002-07-26 18:25) [16]Я так и понял, а как быть не знаю:( Неужели просто нету в Дельфи такой опции как сделать окно поверх всех остальных этой программы и запретить доступ к ним?!:(
← →
Александр (2002-07-26 21:09) [17]все. Спасибо разобрался. Просто запутался.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c