Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

Ошибка при FormActivate   Найти похожие ветки 

 
VHS   (2004-07-23 14:14) [0]

История:

Создаю форму, которая будет как MDIChild, в ней, на равне с описанием всех элементов, добавляю свои ф-ции. Так:

type
TfrmEditPayBlacklist = class(TForm)

......

public
idxs : TStringList;
idxk : TStringList;
procedure ShowList;
end;


Естественно убираю в проекте автосоздание формы.
Теперь, из главного (родительского) окна, создаю вот это свое окно:

procedure TfrmMain.actShowBlackListExecute(Sender: TObject);
begin
with TfrmBlackList.Create(application) do Show;
end;


Окно появляется. Все рады. Все выполняется. Но, усложняем задачу. Не закрывая этого созданного окна, создаем его еще раз, выполняя вушеуказанную ф-цию. Получаем второе, такоеже окно. Вродебы опять все в норме.

Суть проблемы:

В создаваемой форме, на метод OnActivate стоит ф-цция:

procedure TfrmBlackList.FormActivate(Sender: TObject);
begin
ShowList; //можно было задать как self.ShowList - результат тотже.
end;


И когда мы, имея два одинаковых дочерних окна на экране, переходим на предыдущее окно, вызывая событие FormActivate, то при вызове ф-ции ShowList, получаем Error access viotation. Причем, что странно, затыкается олько на ф-циях, которые я задаю сам.

А. Вот еще. Этот SHowList задан в программе так:

procedure TfrmBlackList.ShowList;
var
....
begin
......

end;


Вопрос:

Как правильно задавать процедуры в динамически создаваемых окнах чтобы небыло такой вот фигни? Или надо по-другому создавать эти формы? Или еще чего?


 
VHS   (2004-07-23 14:16) [1]

Так. Похоже ошибся конференцией. Извините.


 
Плохиш ©   (2004-07-23 14:19) [2]


> begin
> ......
>
> end;

Вот в ...... и находится ошибка


 
VMcL ©   (2004-07-23 14:20) [3]

Главный вопрос: что в TfrmBlackList.ShowList?


 
VHS   (2004-07-23 14:25) [4]

Всем спасибо! Нашел ошибку. Странно, но вываливалось при application.ProcessMessages



Страницы: 1 вся ветка

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
1-1090507285
bloodman
2004-07-22 18:41
2004.08.08
прередача строк из Dll в программу.


6-1086101138
Sword
2004-06-01 18:45
2004.08.08
IP по MAC


8-1085404170
Vadim
2004-05-24 17:09
2004.08.08
Иконки и кнопки


1-1090993623
mixam
2004-07-28 09:47
2004.08.08
работа с файлами


8-1085033105
Elysium
2004-05-20 10:05
2004.08.08
Как проиграть WAV WMA MP3 MID MOD?