![]() |
|
|
#1
|
||||
|
||||
![]() Доброго времени суток.
Работаю с MDI формами. подскажите пожалуйста как сделать так чтобы если дочернее окно уже создано то при нажатии на кнопку открывающее это окно оно не дублировалось а становилось активным, если не создано, то создалось. Заранее спасибо! |
#2
|
|||
|
|||
![]() Вот функция, которое ищет форму с заголовком, можно и по другим признакам искать.
Код:
function TDM.FindForm(const aCaption: Integer): TForm; var i:integer; begin with Application.MainForm do for i:=0 to MDIChildCount-1 do if MDIChildren[i].Caption = aCaption then begin Result:=MDIChildren[i]; exit; end; Result:=nil; end; Код:
... var C:TForm ... C:=DM.FindForm("Пользователи"); if C <> nil then C.BringToFront else Application.CreateForm(TUsersForm, UsersForm); ... Последний раз редактировалось Asinkrit, 29.04.2010 в 14:46. |
#3
|
||||
|
||||
![]() Очень много ошибок((
Большинство так и не исправил.. |
#4
|
||||
|
||||
![]() на сколько я пол BringToFront это активация формы, у меня выкидывает с ошибкой
|
#5
|
|||
|
|||
![]() Это рабочий код, из проекта выдернул, что у тебя за ошибки?
|
#6
|
||||
|
||||
![]() да я в принципе уже через свою функцию блокирую двойное открытие формы, осталось разобраться как сделать ее активной при повторном обращении, буду благодарен если подскажете
![]() |