![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() form2 это MDIChild. В нем создается обычная форма form3.
Код:
procedure TForm1.Button1Click(Sender: TObject); begin form2:=Tform2.Create(application); form3:=Tform3.Create(application); form3.Show; Windows.SetParent(form3.Handle, form2.Handle);//ВАРИАНТ 1 //form3.ParentWindow:=form2.Handle; //ВАРИАНТ 2 end; ВАРИАНТ 1 Если делать первым вариантом, то когда активна вложеная форма 3,то форма 2 и форма приложения не активны. А если до снятия фокуса с приложения была активна вложеная форма 3, и окно приложения спряталось за окна других приложений, то вывести его на первый план не удается, так как оно какбы так и остается неактивным.И когда активна дочерняя форма 2, то соответственно форма 3 не активна получается и на ней не работают хоткеи (Таб например) и контролы без фокуса. ВАРИАНТ 2 Все работает с активностью форм нормально, но контролы не получают фокус на вложеной форме 3 и не работаю хот кеи |