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

Вниз

Дочернее окно   Найти похожие ветки 

 
OlegNOE   (2003-06-05 13:04) [0]

Подскажите мастера, почему при попытке присваивания свойству Tag дочерней формы значения вылетает ошибка?


 
Skier ©   (2003-06-05 13:05) [1]

Код.


 
OlegNOE   (2003-06-05 13:14) [2]

procedure TMF.CreateChildForm(fm: Integer; nmFrm: String);
Var i: Integer;
x: Boolean;
begin
x:=True;
for i:= 0 to MF.MdiChildCount - 1 do
begin
If MF.MDIChildren[i].Name=nmFrm then
begin
x:=False;
mf.MDIChildren[i].Tag:=tg;
mf.MDIChildren[i].Show;
Break;
end;
end;
If x then
begin
TSBnk.Create(Application);
Sbnk.Tag:=1; // Error
end;
end;
----------------
Ошибка Access violation at adress XXXXXXXX



 
reonid ©   (2003-06-05 13:14) [3]

Скорее всего, потому что она не создана.
Или же неправильное использование глобальных переменных.


 
Skier ©   (2003-06-05 13:16) [4]

вот и косяк TSBnk.Create(Application); !


 
reonid ©   (2003-06-05 13:25) [5]

Предчувствие меня не обмануло
(Второе).

Вопрос: на что ссылается SBnk?.
Очевидно, ты надеешься, что на только что созданную форму.
Тогда вопрос: на чём основана твоя уверенность?


Выкинь глобальную переменную SBnk и заведи
в процедуре локальную:

procedure TMF.CreateChildForm(fm: Integer; nmFrm: String);
Var tmpSBnk: TSBank;
begin
...
tmpSBnk := TSBnk.Create(Application);
tmpSbnk.Tag:=1; // Error
...
end;


 
OlegNOE   (2003-06-05 13:27) [6]

reonid, форма создается, я ее вижу

Skier, Почему косяк? Как надо?


 
reonid ©   (2003-06-05 13:32) [7]

OlegNOE (05.06.03 13:27)
Я понимаю, что она создаётся.
Я хочу, чтобы подумал ты:

1) У тебя есть переменная SBnk типа TSBnk.
2) Ты создаёшь объект типа TSBnk.

Объект (форма) действительно создана, её можно увидеть.
НО С ЧЕГО ТЫ ВЗЯЛ, ЧТО ПЕРЕМЕННАЯ SBnk БУДЕТ УКАЗЫВАТЬ
НА ЭТОТ СОЗДАННЫЙ ОБЪЕКТ????

Ответь.


 
OlegNOE   (2003-06-05 13:34) [8]

зажался немного, теперь догнал, всем спасибо



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
3-60057
stkatch
2003-05-28 11:19
2003.06.19
Оператор BREAK в IB


14-60323
Лёлик
2003-06-04 00:36
2003.06.19
Crystal Enterprise


4-60472
Andrey007
2003-04-17 16:40
2003.06.19
Как ловить событие ухода из программы по нажатию Alt+Tab?


6-60308
vi7777
2003-04-11 12:18
2003.06.19
При уничтожении формы с WebBrowser вылетает куча консолей !


8-60281
Карелин Артем
2003-03-07 06:39
2003.06.19
Чем показать картинки в 100 мегов?