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

Вниз

Вызов формы без деактивации текущей формы   Найти похожие ветки 

 
ViToTiV   (2009-08-27 14:36) [0]

Подскажите, как мне показать динамическую форму, но что бы она не деактивировала текущую форму (это может быть главная, а может быть и другая динамическая)?
Можно на activate поставить
SendMessage(Screen.ActiveForm.Handle, WM_NCACTIVATE, 1, 0);
Но это не работает, если владелец формы GetDesktopWindow (что бы отображалась кнопка на таскбаре)


 
Leonid Troyanovsky ©   (2009-08-27 14:46) [1]


> ViToTiV   (27.08.09 14:36)  

> Подскажите, как мне показать динамическую форму, но что
> бы она не деактивировала текущую форму (это может быть главная,
>  а может быть и другая динамическая)?

Попробуй так:

procedure TFormX.ShowNA;
begin
 ShowWindow(Handle, SW_SHOWNA);
 Visible := True;
end;

--
Regards, LVT.


 
ViToTiV   (2009-08-27 16:03) [2]

Спасибо, помогло :)
Притом я вспомнил, что уже это где-то использовал.

Тогда ещё вопрос в продолжение этой темы. Как мне потом закрыть эту форму, но что бы после закрытия не активизировалось главное окно программы? пробовал много вариантов, но ничего не помогает. :( Всегда главная форма сразу после зарытия выходит на передний план.


 
ViToTiV   (2009-08-27 16:08) [3]

Хм... а при открытии формы Вашим методом, послее её закрытия, главное окно не активизируется


 
Leonid Troyanovsky ©   (2009-08-27 21:33) [4]


> ViToTiV   (27.08.09 16:08) [3]

> Хм... а при открытии формы Вашим методом

Это не мой, увидел у Peter Below, но, т.к. кода 2 строки,
никто на него не претендует.
А у Питера можно найти много полезных приемов.

--
Regards, LVT.


 
ViToTiV   (2009-08-31 11:10) [5]

Мой второй вопрос так и остался открытым:
Можно как-то закрыть дочернюю форму у которой parent=GetDesktopWindow но что бы после закрытия не активизировалась главная форма? Если она открыта, то она выходит на передний план.


 
Leonid Troyanovsky ©   (2009-08-31 13:13) [6]


> ViToTiV   (31.08.09 11:10) [5]

> Можно как-то закрыть дочернюю форму у которой parent=GetDesktopWindow

SetForegroundWindow(GetDesktopWindow)

--
Regards, LVT.


 
ViToTiV   (2009-08-31 15:08) [7]


> SetForegroundWindow(GetDesktopWindow)

Но так будет всегда активный десктоп после закрытия формы, а если было активно окно какой-то программы, должно стать активным то окно.
Получается, до открытия моей формы нужно сначала получать дескриптор активного окна, а по закрытии делать SetForegroundWindow(дескриптор окна)? А проще никак? :(



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
2-1293704422
Неважно
2010-12-30 13:20
2011.04.10
Цвет TBitmap


15-1293107643
Медвежонок ХМЛ
2010-12-23 15:34
2011.04.10
все таки должен ли он только звонить, или не только :)


6-1236235577
DrZloDey
2009-03-05 09:46
2011.04.10
Перенаправление портов


15-1292966991
Юрий
2010-12-22 00:29
2011.04.10
С днем рождения ! 22 декабря 2010 среда


15-1293312589
Юрий
2010-12-26 00:29
2011.04.10
С днем рождения ! 26 декабря 2010 воскресенье