Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
ВнизФорма для ожидания Найти похожие ветки
← →
Grinder (2007-10-28 11:19) [0]Привет, такой вопрос: у меня есть форма, один из участков кода в этой форк, выполняется очень долго, поэтому я хочу сделать форму ожидания, т.е пока выполняется длинный код,эта форма висит и говорит юзеру чтобы тот ждал, я это делал так: создал форму открыл ее как модальную, но как известно теперь код в другой форме не выполняется. Как сделать так, чтобы эффект был как у модальной формы (т.е юзер бы не смог ничего сделаьт с первой формой), но код в первой форме выполнялся бы, когда модальная форма открыта. Спасибо!
← →
Virgo_Style © (2007-10-28 11:35) [1]длительные вычисления вынести в поток.
← →
Grinder (2007-10-28 11:40) [2]Блин а по-проще как-нить можно это сделать без потоков
← →
homm © (2007-10-28 11:52) [3]Поставь Application.ProcessMessages, что-бы она периодически (раз 20 в секунду) вызывалась во время вычислений.
← →
Плохиш © (2007-10-28 12:29) [4]
> Grinder (28.10.07 11:40) [2]
При отображении формы посылаешь форме с обработкой сообщение, в обработчике сообщения делаешь свою долгую обработку, после обработки закрываешь свою модальную форму.
← →
homm © (2007-10-28 14:33) [5]> [4] Плохиш © (28.10.07 12:29)
> При отображении формы посылаешь форме с обработкой сообщение,
> в обработчике сообщения делаешь свою долгую обработку,
> после обработки закрываешь свою модальную форму.
Получилось проще в реализации и логичнее в поведении, нежели [3], ага?
← →
Virgo_Style © (2007-10-28 14:49) [6]homm © (28.10.07 14:33) [5]
Получилось проще в реализации и логичнее в поведении, нежели [3], ага?
Может и сложнее, зато вопросу соответствует
← →
homm © (2007-10-28 14:56) [7]> [6] Virgo_Style © (28.10.07 14:49)
> Может и сложнее, зато вопросу соответствует
А важнее на вопрос ответить, или человека научить правильно делать?
← →
Virgo_Style © (2007-10-28 15:25) [8]homm © (28.10.07 14:56) [7]
Имею смелость полагать мой ответ [1] полностью отвечающим обеим задачам.
Решение [4] постановке задачи соответствует. Несколько формально, трудно спорить)
Решение [3] не соответствет постановке задачи, хотя года три тому назад я бы посчитал его приемлемым.
← →
homm © (2007-10-28 15:26) [9]> [8] Virgo_Style © (28.10.07 15:25)
> Имею смелость полагать мой ответ [1] полностью отвечающим
> обеим задачам.
Не спорю. В реализации сложнее только слегка, потому было [2].
← →
Плохиш © (2007-10-28 15:31) [10]
> homm © (28.10.07 14:33) [5]
В какое место предлагаешь ему Application.ProcessMessages поставить? Форму-то он модально вызвал, может стоит вопрос прочитать?
← →
Virgo_Style © (2007-10-28 15:47) [11]Если "участок кода" - это цикл, то, совмещая [3] и [4], можно передать модальной форме callback-процедуру, и пусть она ее вызывает хоть по таймеру, хоть в перемешку с processmessages"ами.
Извращаться - так от души))
← →
homm © (2007-10-28 15:54) [12]> [10] Плохиш © (28.10.07 15:31)
> Форму-то он модально вызвал, может стоит вопрос прочитать?
Такая форма без труда примет сообщение и обработает его, ага? ;)
А если ты про PostMessage а не про Send, то зачем тогда моразм с сообщениями? Функция-член и вперед :)
← →
Leonid Troyanovsky © (2007-10-28 16:52) [13]
> Плохиш © (28.10.07 15:31) [10]
> В какое место предлагаешь ему Application.ProcessMessages
> поставить?
http://www.rsdn.ru/Forum/?mid=573413
http://www.rsdn.ru/Forum/Message.aspx?mid=500558&only=1
--
Regards, LVT.
← →
Плохиш © (2007-10-28 18:49) [14]
> Leonid Troyanovsky © (28.10.07 16:52) [13]
> > Плохиш © (28.10.07 15:31) [10]
Не кажется ли тебе, что ссылки приводишь не по адресу, адресуй их homm.
← →
Плохиш © (2007-10-28 18:50) [15]
> homm © (28.10.07 15:54) [12]
> > [10] Плохиш © (28.10.07 15:31)
> > Форму-то он модально вызвал, может стоит вопрос прочитать?
>
>
> Такая форма без труда примет сообщение и обработает его,
> ага?
Ссылки из [13] прочитал уже?
← →
Leonid Troyanovsky © (2007-10-29 12:15) [16]
> Плохиш © (28.10.07 18:49) [14]
> не по адресу, адресуй их homm.
Был рассеян, sorry.
2homm ©: [13]
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.065 c