Форум: "Основная";
Текущий архив: 2011.04.10;
Скачать: [xml.tar.bz2];
ВнизВызов формы без деактивации текущей формы Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c