|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.09.2013, 12:38 | #1 |
Форумчанин
Регистрация: 29.01.2013
Сообщений: 319
|
Как узнать, создалась форма или нет?
Есть некая форма, которая создаётся, но показывается не сразу. Естественно, тот факт, что её не показали, не означает, что не надо ничего делать, т.е., работа должна начаться сразу после создания. Столкнулся с такой вот нехорошей проблемой, что событие OnCreate вызывается совсем не в тот момент, когда форма уже создана. Можно, конечно, влепить одноразовый таймер, но это как-то горбато...
Есть идеи? |
24.09.2013, 14:39 | #2 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Идеи есть. Событие OnCreate, начинается ДО создантия формы. Т.е., формы ещё не существует, а Вы пытаетесь её найти. Это как, трахнул девку и в этот-же момент, пытаться отыскать ребёнка.
Грубовато, но по-сути.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 24.09.2013 в 14:42. |
24.09.2013, 15:21 | #3 | |
Форумчанин
Регистрация: 29.01.2013
Сообщений: 319
|
В хэлпе написано
Цитата:
|
|
24.09.2013, 15:36 | #4 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Корректен. Вы, просто не понимаете, как это происхотит.
Формы ещё нет (на экране, она ещё не нарисована), но событие OnCreate, уже есть. Когда она будет нарисована, возникнет событие onShow.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
24.09.2013, 16:18 | #5 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
24.09.2013, 16:56 | #6 |
Форумчанин
Регистрация: 29.01.2013
Сообщений: 319
|
Smitt&Wesson
В этом-то и фикус! У меня форма только создаётся. Когда она покажется - неизвестно. А работать она должна сразу, как только создалась. Поэтому OnShow не подходит. Надо что-то такое, чтобы было после Create. Stilet Попробую пояснить так Код:
|
24.09.2013, 17:03 | #7 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
Цитата:
formX->memoY->Lines->Add(s);
программа — запись алгоритма на языке понятном транслятору
|
|
24.09.2013, 17:24 | #8 |
Форумчанин
Регистрация: 29.01.2013
Сообщений: 319
|
evg_m
Уверен. Функции одного класса формы. |
24.09.2013, 18:53 | #9 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
OnCreate после создания, о чем и говорится в цитате.
Не понятно, что автору надо... пример в #6 кривой. |
24.09.2013, 19:24 | #10 | |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,829
|
Цитата:
Кроме того, если у формы выставить Visible в True, она выводится на экран сразу после создания, что тоже может быть внезапно для кода.
В разработке: воспроизводственный контур ИТ
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как узнать, захвечен mutex или нет (linux, C++) | Egyptorium | Общие вопросы C/C++ | 1 | 16.01.2013 14:55 |
как узнать пересекаются 2 окружности или нет | fate | Общие вопросы Delphi | 2 | 17.06.2011 15:27 |
как узнать занят порт или нет | DeDoK | Работа с сетью в Delphi | 3 | 12.09.2010 21:51 |
Как узнать программа запущена или нет? | ilSMoKEli | Общие вопросы Delphi | 5 | 02.05.2010 23:01 |
Как узнать открыл пользователь окно или нет? | KaimNotark | Общие вопросы Delphi | 5 | 09.02.2010 09:38 |