Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
15-1292941578
aka
2010-12-21 17:26
2011.04.10
как бороться с негодяем?


2-1294602867
mefodiy
2011-01-09 22:54
2011.04.10
Ошибка при использовании TRxMemoryData


15-1293026590
картман
2010-12-22 17:03
2011.04.10
db comparer


2-1294905838
RUu
2011-01-13 11:03
2011.04.10
не выполнена проверка подлинности


2-1294821073
student_92
2011-01-12 11:31
2011.04.10
Классы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский