Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запуск Form4 один раз и всё 
:(
    Опции темы
Janger
Дата 19.6.2013, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 17.6.2013

Репутация: 1
Всего: 1



Мне нужно, что бы Form4 вывелась всего один раз. При первом запуске программы, и что бы больше она вообще не появлялась нигде...
Т.е. как получается, пользователь запускает программа, появляется Form4, пользователь вводит там определённые данные, и нажимает "Далее", и переходит на Form1.
всё, Form4 мне вообще больше не нужно будет...
Подскажите пожалуйста, как это можно сделать?
PM MAIL   Вверх
kami
Дата 19.6.2013, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 22
Всего: 72



Цитата(Janger @  19.6.2013,  15:06 Найти цитируемый пост)
появляется Form4, пользователь вводит там определённые данные, и нажимает "Далее"

Эти данные где-то же сохраняются, ведь так?
Что мешает перед показом формы проверить наличие этих данных, и если их есть - то не показывать лишнее?
PM MAIL WWW   Вверх
Poseidon
Дата 19.6.2013, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 9
Всего: 133



Код

program Project1;

uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {MainForm},
  Unit2 in 'Unit2.pas' {Form4};

{$R *.res}

begin
  Application.Initialize;

  Form4:= TForm4.Create(nil);
  Form4.ShowModal;
  Form4.Free;

  Application.CreateForm(TMainForm, MainForm);
  Application.Run;
end.


Это сообщение отредактировал(а) Poseidon - 19.6.2013, 16:11


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
northener
Дата 19.6.2013, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



В дополнение к предыдущему сообщению.
Форму TForm4 при этом стоит удалить из списка автосоздаваемых форм.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Данкинг
Дата 19.6.2013, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Кроме kami никто вопроса ТС не понял...


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
northener
Дата 19.6.2013, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Данкинг @  19.6.2013,  19:13 Найти цитируемый пост)
Кроме kami никто вопроса ТС не понял...

А я считаю, что только Poseidon и я вопрос ТС поняли smile
Имхо, речь об обычной проверке логин/пароль.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Poseidon
Дата 19.6.2013, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 9
Всего: 133



Цитата(northener @  19.6.2013,  17:56 Найти цитируемый пост)
Форму TForm4 при этом стоит удалить из списка автосоздаваемых форм.
При удалении строчки Application.CreateForm(TForm4, Form4); даже в ручную, форма сама удалиться из автосоздаваемых.



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
northener
Дата 19.6.2013, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Poseidon @  19.6.2013,  20:17 Найти цитируемый пост)
При удалении строчки Application.CreateForm(TForm4, Form4); даже в ручную, форма сама удалится из автосоздаваемых.

Я говорил только что надо удалить. А как именно меня не волновало. 
А то ведь автор мог и так написать:
Код

program Project1;
uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {MainForm},
  Unit2 in 'Unit2.pas' {Form4};
{$R *.res}
begin
  Application.Initialize;
  Form4:= TForm4.Create(nil);
  Form4.ShowModal;
  Form4.Free;
  Application.CreateForm(TForm4, Form4);
  Application.CreateForm(TMainForm, MainForm);
  Application.Run;
end.

 smile 


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Janger
Дата 19.6.2013, 20:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 17.6.2013

Репутация: 1
Всего: 1



Цитата(Poseidon @ 19.6.2013,  16:09)
Код

program Project1;

uses
  Vcl.Forms,
  Unit1 in 'Unit1.pas' {MainForm},
  Unit2 in 'Unit2.pas' {Form4};

{$R *.res}

begin
  Application.Initialize;

  Form4:= TForm4.Create(nil);
  Form4.ShowModal;
  Form4.Free;

  Application.CreateForm(TMainForm, MainForm);
  Application.Run;
end.

Ну в принципе да, именно так всё и должно работать, вот только он всё равно выдаёт ошибку(((
PM MAIL   Вверх
northener
Дата 19.6.2013, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Janger @  19.6.2013,  20:55 Найти цитируемый пост)
только он всё равно выдаёт ошибку

Секретную?


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Janger
Дата 19.6.2013, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 17.6.2013

Репутация: 1
Всего: 1



Цитата(northener @ 19.6.2013,  21:09)
Цитата(Janger @  19.6.2013,  20:55 Найти цитируемый пост)
только он всё равно выдаёт ошибку

Секретную?

Ааа..)) Всё я решил проблему, я ещё Form5 добавил...))
А теперь проблема вот в этом...
Смотрите, у меня открывается Form4. я в ней заполняю данные  и всё дело переходит в Form1,
но Form4 не закрывается, и когда я пишу код:
Код

Form4.Close;

Дабы эта форма закрылась, то происходит такая вешь, что закрывается и Form4 и Form1, да и вообще программа завершает своё скупое существование)))
PM MAIL   Вверх
northener
Дата 19.6.2013, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Janger @  19.6.2013,  21:19 Найти цитируемый пост)
Дабы эта форма закрылась, то происходит такая вешь, что закрывается и Form4 и Form1, да и вообще программа завершает своё скупое существование

Значит сделал совсем не так как предложил Poseidon. И Form4 осталась главной формой приложения. :(
Короче - код в студию.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Данкинг
Дата 19.6.2013, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



northener, как я понял, требуется, чтобы форма запускалась только один раз при первом запуске программы на данном компе.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
northener
Дата 19.6.2013, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Данкинг @  19.6.2013,  21:46 Найти цитируемый пост)
northener, как я понял, требуется, чтобы форма запускалась только один раз при первом запуске программы на данном компе. 

Может быть  и так. Но ТС всё равно при старте хочет показать некую форму ввода некоторых данных, которые должен ввести пользователь. Но как он не старается у него эта форма становится главной формой и просто закрыть он её не может.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Poseidon
Дата 19.6.2013, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 9
Всего: 133



Цитата(Данкинг @  19.6.2013,  21:46 Найти цитируемый пост)
требуется, чтобы форма запускалась только один раз при первом запуске программы на данном компе.
Неужели телепаты с отпуска вернулись? Я вот даже и не подумал о таком варианте smile

Цитата(Janger @  19.6.2013,  21:19 Найти цитируемый пост)
Смотрите, у меня открывается Form4. я в ней заполняю данные  и всё дело переходит в Form1,
но Form4 не закрывается, и когда я пишу код:
Как "переходит" и где "пишешь код"? Ничего вообще не понятно.

Цитата(northener @  19.6.2013,  20:50 Найти цитируемый пост)
Я говорил только что надо удалить. А как именно меня не волновало. 
Выкрутился  smile 



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Janger
Дата 19.6.2013, 23:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 17.6.2013

Репутация: 1
Всего: 1



Код

  Application.Initialize;
  Application.CreateForm(TForm5, Form5);
  Application.CreateForm(TForm1, Form1);
  Form5.Show;
  Form5.Update;
  while Form5.Timer1.Enabled do
  Application.ProcessMessages;
  Form5.Hide;
  Form5.Free;
  Application.CreateForm(TForm4, Form4);
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TForm2, Form2);
  Application.CreateForm(TForm3, Form3);
  Application.Run;

В общем, это дело так у меня работает...

Это сообщение отредактировал(а) Janger - 19.6.2013, 23:06
PM MAIL   Вверх
northener
Дата 19.6.2013, 23:36 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Janger @  19.6.2013,  23:04 Найти цитируемый пост)
В общем, это дело так у меня работает...

Вот это изврат, так изврат!
Аминь smile


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Данкинг
Дата 19.6.2013, 23:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(Poseidon @  19.6.2013,  23:17 Найти цитируемый пост)
Неужели телепаты с отпуска вернулись? Я вот даже и не подумал о таком варианте

Ну так после этой фразы:
Цитата(Janger @  19.6.2013,  16:06 Найти цитируемый пост)
При первом запуске программы

я так и понял, как понял. smile 




--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Poseidon
Дата 20.6.2013, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 9
Всего: 133



Janger, с таким вариантом у тебя пятая форма будет считаться главной. Я не пробовал, но неужели приложение не закрывается полностью при закрытии пятой формы?


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Janger
Дата 20.6.2013, 08:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 17.6.2013

Репутация: 1
Всего: 1



Цитата(Poseidon @ 20.6.2013,  08:02)
Janger, с таким вариантом у тебя пятая форма будет считаться главной. Я не пробовал, но неужели приложение не закрывается полностью при закрытии пятой формы?

Неа...))) Всё работает неплохо..)))
В начале открывается ФОРМА5, потом открывается ФОРМА4, а только потом открывается ФОРМА1, только при этом ФОРМА4 не закрывается...((
PM MAIL   Вверх
Rennigth
Дата 20.6.2013, 08:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 15
Всего: 76



Janger, Объясни что конкретно каждая форма у тебя делает... не, лучше объяни что дожна делать. 

п.с. Form1 зачем 2 раза создаешь?

п.с.с. что за изврат?
Код

  while Form5.Timer1.Enabled do
  Application.ProcessMessages;



--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
northener
Дата 20.6.2013, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Poseidon @  20.6.2013,  08:02 Найти цитируемый пост)
Janger, с таким вариантом у тебя пятая форма будет считаться главной. Я не пробовал, но неужели приложение не закрывается полностью при закрытии пятой формы? 

Сначала главной становится пятая, таки да. Но после её уничтожения главной становится форма, которая после этого создаётся вызовом Application.CreateForm, т.е четвёртая. Почему я и сказал что это изврат. smile


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1271 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.