Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

Видеокурс программиста и крэкера 5D 2O17
(актуальность: декабрь 2O17)
Свежие инструменты, новые видеоуроки!

  • 400+ видеоуроков
  • 800 инструментов
  • 100+ свежих книг и статей

УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



Получение ссылки на экземпляр класса

Программисты ругаются:
- Типун тебе на модем!
- Эх ты, защёлка от дисковода!
- Не бита совести у тебя нет!

...мне также понадобилось в подпрограмме получить ссылку на дочернее MDI-окно без сообщения подпрограмме с каким конкретно классом MDI необходимо работать. Что я сделал: я передавал в виде параметров тип дочернего MDI-окна и ссылку как нетипизированную переменную и затем обрабатывал это в подпрограмме.

Вот пример. Эта подпрограмма работает с дочерним окном, которое может иметь только один экземпляр. Если оно не открыто, подпрограмма создаст его, если оно открыто, оно переместит его на передний план.


 procedure FormLoader (FormClassType: TFormClass; var FormName);
 begin
   if TForm(FormName) = nil then
   begin
     Application.CreateForm (FormClassType, FormName);
   end
   else
   begin
     TForm(FormName).BringToFront;
     TForm(FormName).WindowState := wsNormal;
   end;
 end;
 

Вот как это вызывать:


 procedure TfrmTest.sbOpenClick(Sender: TObject);
 begin
   FormLoader (TfrmTest, frmTest);
 end;
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS