Форум: "Основная";
Текущий архив: 2005.10.30;
Скачать: [xml.tar.bz2];
ВнизКак корректно создать несколько экземпляров формы... Найти похожие ветки
← →
Alex_Mel (2005-10-11 14:06) [0]Здравствуйте.
Мне необходимо создать несколько экземпляров одной и той же формы на экране. Формы закрываются сами по таймеру (или по щелчку мышкой), но при закрытии начинают валиться ошибки доступа к памяти.
Создаю так:
frm_Tmp:=Tfrm_Tmp.Create(Application);
Frm_Tmp.Tag:=Integer(Frm_Message);
Уничтожаю:
i:=frm_Tmp.Tag;
FreeAndNil(Tfrm_Tmp(i));
Обращаюсь:
Tfrm_Tmp(frm_Tmp.Tag).Top..........
← →
Eraser © (2005-10-11 14:11) [1]
> Alex_Mel (11.10.05 14:06)
Создавай такwith Tfrm_Tmp.Create(Application) do
Show;
Закрывай методом Close, в обработчике OnClose впишиAction := caFree;
← →
Alex_Mel (2005-10-11 14:16) [2]>Eraser © (11.10.05 14:11)
А как же тогда обращаться именно к этой форме в различных ее методах?
Ведь форм, допустим пять, а метод, допустим OnTimer у них у всех один. Как в нем обратиться к нужной форме?
← →
Leonid Troyanovsky © (2005-10-11 14:22) [3]
> Alex_Mel (11.10.05 14:16) [2]
> А как же тогда обращаться именно к этой форме в различных
> ее методах?
Единственным корректным способом обращения к самой форме
из ее методов является Self, в котором, обычно, нужды не возникает
(за исключением случаев конфликтов имен внутри блока with).
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.10.30;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.039 c