![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Откуда AccessViolation? [D5, Paradox]
mfender © (2003-09-20 22:49:00)
Господа! Пишу:
procedure Tdm.DataModuleCreate(Sender: TObject);
begin
tabOps.First;
while not tabOps.Eof do
begin
frm.cbOps.Items.Add(tabOpsNF.AsString);
tabOps.Next;
end;
end;
Работает.
Пишу:
procedure Tfrm.FormCreate(Sender: TObject);
begin
dm.cbOpsItems(frm);
end;
procedure Tdm.cbOpsItems(Sender: TObject);
begin
tabOps.First;
while not tabOps.Eof do
begin
frm.cbOps.Items.Add(tabOpsNF.AsString);
tabOps.Next;
end;
end;
Получаю AccessViolation. cbOps - TDBComboBox
mfender (2003-09-21 23:23:00) [1]
> У тебя кросс ссылки на модули, не могут быть одновременно
> быть создаными и dm и frm, порядок создания не спасет
Это я понимаю. Я сделал все немного по-другому. Точнее, как положено. Просто глаз замыленный не всегда видит очевидное. Часто ведь бывает, что голову сломаешь из-зи синтаксиса, не замечая ошибки...
Anatoly Podgoretsky (2003-09-21 12:36:00) [2]
У тебя кросс ссылки на модули, не могут быть одновременно быть создаными и dm и frm, порядок создания не спасет.
mfender (2003-09-21 02:23:00) [3]
> Наиболее вероятно - в момент выполнения Tfrm.FormCreate
> еще не создан dm
Спасибо. Так оно действительно и было.
Zacho (2003-09-21 00:56:00) [4]
Наиболее вероятно - в момент выполнения Tfrm.FormCreate еще не создан dm