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

Вниз

Проблема с MDI формами   Найти похожие ветки 

 
Startwar   (2002-05-12 00:53) [0]

Такая проблема:
У меня есть 1 MDI Форма, и 2 MDI Child.. При нажатии на 1 MDIChild форме запускается 2 MDIChild форма.. На этой форме я к примеру нажимаю еще одну кнопку и по идее на 1 MDIChild форме должно стать видимым поле.. Выдает ошибку AccessVeolation... Я это делаю так:

procedure TForm3.Button1Click(Sender: TObject);
begin
Form2.Edit2.Visible := true;
end;


 
Cobalt   (2002-05-12 10:09) [1]

При работе с MDI Child нельзя использовать статические ссылки. Обращайтесь только через массив MDIChildren Главной формы. По индексу, или перебором заголовков/тэгов или чего еще - сами решайте.

TCustomForm.MDIChildren
Provides indexed access to all MDI child forms.
property MDIChildren[I: Integer]: TForm;


 
Cobalt   (2002-05-12 10:10) [2]

При работе с MDI Child нельзя использовать статические ссылки. Обращайтесь только через массив MDIChildren Главной формы. По индексу, или перебором заголовков/тэгов или чего еще - сами решайте.

TCustomForm.MDIChildren
Provides indexed access to all MDI child forms.
property MDIChildren[I: Integer]: TForm;
Да поможет вам F1.


 
Startwar   (2002-05-12 14:24) [3]

А по конкретней можно? Как это будет выглядеть на моем примере?
MDI форма называется FormMain, 1 дочерняя на которой мне нужно из второй формы выключить поле Edit называется FormVak, а вторая дочерняя FormFind. Заранее спасибо!!!


 
Malder   (2002-05-12 14:40) [4]

Startwar, скорее всего, неправильно понимаешь зачем нужно MDI. Все дочерние окна должны быть динамическими, а у тебя, скорее всего, статические. В твоем случае наверное и SDI можно обойтись.

У тебя в FormMain.MDIChildren массив дочерних окон. Я не могу угадать, какой индекс имеет в этом массиве FormVak и FormFind. Первая из них имеет индекс допустим 0, а другая 1.
Тогда в FormFind:

TFormVak(FormMain.MDIChildren[0]).Edit2.Visible:=false;


 
Startwar   (2002-05-12 15:37) [5]

Спасибо Malder... Все работает....



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
3-73025
Sam
2002-04-23 19:10
2002.05.23
Проблема 97


1-73240
Garry
2002-05-10 10:35
2002.05.23
Как отобразить сообщение при наведении мыши на объект?


3-73000
Turalyon
2002-04-25 13:36
2002.05.23
SQL Server 2k


1-73096
krion_
2002-05-12 15:55
2002.05.23
Как в StringGrid организовать свою прокрутку.


4-73476
daos
2002-03-20 13:27
2002.05.23
Снова чайный вопрос: как выключить комп програмно .