Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизМодальные формы Найти похожие ветки
← →
В л а д и м и р © (2004-03-23 18:17) [0]У меня три формы (пусть будет Form1, Form2, Form3). Работа начинается с первой, которая открывается как модальная, потом по кнопке Далее осуществляется переход ко второй, а затем и к третьей формам (открываются как модальные)... Вопрос: как по клику Далее сделать так, чтобы каждая предыдущая форма исчезала, а по достижении последней Form3, нажав кнопку Повторить, появлялась бы 1-я форма и весь процесс начинался бы сначала. Я каждую последующую форму скрывал методом Hide, но когда нажималась кнопка Повторить, выскакивало сообщение ,что нельзя открыть visible modal form... И свойство visible в false устанавливал и метод close использовал, но получалось так, что все три формы закрывались только при закрытии последней третьей Если Вы дошли до конца вопроса, то подскажите, Как быть?
← →
Fay © (2004-03-23 18:20) [1]А нельзя испольковать одну форму?
← →
В л а д и м и р © (2004-03-23 18:25) [2]Это получается, что у меня на одной будет и кнопка Обзор со строкой пути к файлу, и индикатор загрузки считывания данных и анимированный ролик загрузки, и отчет о загрузке... Выходит, что на одну форму все это выложить и в свое время делать невидимым... Это рационально или это обычная практика? В принципе, я об этом варианте думал, но по-моему это не очень правильно что ли...
← →
Oyster © (2004-03-23 18:27) [3]А если сделать формы не модальными? И еще: при появлении этой гадости можно нажать F1 и внимательно изучить содержимое.
← →
Oyster © (2004-03-23 18:29) [4]
> Это получается, что у меня на одной будет и кнопка Обзор
> со строкой пути к файлу, и индикатор загрузки считывания
> данных и анимированный ролик загрузки, и отчет о загрузке...
> Выходит, что на одну форму все это выложить и в свое время
> делать невидимым... Это рационально или это обычная практика?
> В принципе, я об этом варианте думал, но по-моему это не
> очень правильно что ли...
Между прочим, это - самый экономный вариант со всех точек зрения.
← →
guest_Dmitry (2004-03-23 18:37) [5]>В л а д и м и р © (23.03.04 18:17)
ModalResult := mrOk?
← →
Fay © (2004-03-23 18:38) [6]>> но по-моему это не очень правильно что ли...
Ну вот ты на форуме с вопросом. Это правильно?
← →
В л а д и м и р © (2004-03-23 18:44) [7]>ModalResult := mrOk?
Про окей не пробовал, а про mrCansel было - не помогло.. А вот если кто знает, скажите, в обычных программах (например инсталляции) последовательность смены содержимого в форме происходит в одной форме или одна форма сменяет другую?
← →
Oyster © (2004-03-23 18:50) [8]
> А вот если кто знает, скажите, в обычных программах (например
> инсталляции) последовательность смены содержимого в форме
> происходит в одной форме или одна форма сменяет другую?
Стопудово в одной форме и даже, скорее всего, компоненты по мере надобности создаются и уничтожаются.
← →
В л а д и м и р © (2004-03-23 18:53) [9]ок, попробуем в одной форме... Всем участникам огромное спасибо за внимание!!!
← →
Юрий Зотов © (2004-03-23 19:13) [10]> Если Вы дошли до конца вопроса, то подскажите, Как быть?
Положить на ОДНУ форму PageControl, создать на нем 3 страницы, а все остальное наложить на них. И просто переключать страницы.
← →
TUser © (2004-03-23 19:43) [11]Вау. Самому интересно стало. Попробовал - прокатила вот такая конструкция. В проекте пишем
program Project1;
uses
Forms, Controls,
Unit1 in "Unit1.pas" {Form1},
Unit2 in "Unit2.pas" {Form2},
Unit3 in "Unit3.pas" {Form3};
{$R *.res}
var
f:boolean;
begin
Application.Initialize;
Form1:=TForm1.Create(Application);
Form2:=TForm2.Create(Application);
Form3:=TForm3.Create(Application);
Application.Run;
f:=true;
while f do begin
form1.ShowModal;
f:=form1.ModalResult = mrOK;
if f then begin
form2.ShowModal;
f:=form2.ModalResult = mrOK;
if f then begin
form3.ShowModal;
f:=form3.ModalResult = mrOK;
end;
end;
end;
end.
На каждой форме - кнопочка. У нее ModalResult = mrOK. Вот так это все работает ...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.043 c