![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вызов процедур MDI форм [D7, XP]
D@nger © (2009-04-21 14:37:00)Здравствуйте! Вызываю из обычной формы процедуру MDI формы следующим образом:
if MDIChildCount>0 then
begin
j:=MDIChildCount-1;
for i:=0 to j do
begin
if MDIChildren[i].Name='FMDI_one' then tfvklad(MDIChildren[i]).setkapaint;
if MDIChildren[i].Name='FMDI_two' then tfmodul(MDIChildren[i]).setkapaint;
end;
end;
Вызов процедур не присходит... почему?
D@nger (2009-04-21 14:50:00) [1]ааааа.... нашел где ошибка... процедуру вызывал не из главной формы ...
вот так все заработало:
if fmain.MDIChildCount>0 then
begin
j:=fmain.MDIChildCount-1;
for i:=0 to j do
begin
if fmain.MDIChildren[i].Name='FMDI_one' then tfmdi_one(fmain.MDIChildren[i]).setkapaint;
if fmain.MDIChildren[i].Name='FMDI_two' then tfmdi_two(fmain.MDIChildren[i]).setkapaint;
end;
end;
D@nger (2009-04-21 14:42:00) [2]если вызываемую процедуру вызывать в этой же MDI форме.. она отрабатывает без ошибки...
D@nger (2009-04-21 14:41:00) [3]т.е. вот так:
if MDIChildCount>0 then
begin
j:=MDIChildCount-1;
for i:=0 to j do
begin
if MDIChildren[i].Name='FMDI_one' then tfmdi_one(MDIChildren[i]).setkapaint;
if MDIChildren[i].Name='FMDI_two' then tfmdi_two(MDIChildren[i]).setkapaint;
end;
end;
Игорь Шевченко (2009-04-21 14:40:00) [4]
> Вызов процедур не присходит... почему?
очевидно из-за ошибки