Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.07.31;
Скачать: [xml.tar.bz2];

Вниз

HWND_TOPMOST не работает   Найти похожие ветки 

 
Torvald   (2005-05-30 22:27) [0]

Добрый вечер.
Столкнулся с проблемой - надо вывести окно поверх всех окон системы. Первым делом попробовал следующий код

 if not SetWindowPos(Handle, HWND_TOPMOST,0,0,0,0,
   SWP_NOSIZE or SWP_NOMOVE) then
   showmessage("Fail");


функция возвращает true, но окно поверх всех окон только в моей программе!
Попробовал другой вариант:

var
 dwStyle: integer;
begin
 dwStyle := GetWindowLong(self.Handle, GWL_EXSTYLE);
 SetWindowLong(self.Handle, GWL_EXSTYLE, dwStyle or WS_EX_TOPMOST);


тот же эффект - окно активно только внутри моей программы.

Вставлял эти вызовы повсюду: OnCreate, OnShow, OnActivate, просто по нажатию кнопки.

Небольшая оговорка, если я применяю эти функции к главной форме - всё отлично работает, а не в главной, как мне и надо - не работает.

Помогите please!


 
Torvald   (2005-05-30 22:33) [1]

а не в главной, как мне и надо - не работает.

вернее как мне НЕ надо )


 
Marser ©   (2005-05-30 22:40) [2]


> тот же эффект - окно активно только внутри моей
> программы.

Это что-то не то...


 
Torvald   (2005-05-30 22:43) [3]

Это что-то не то...

Вот и я ж про то! Уже 2 часа инет рою по этому вопросу.
У формы стиль без рамки - BorderStyle = bsNone, но ставил с рамкой - одно и тоже.


 
alex-drob   (2005-05-30 22:45) [4]

Посмотри, может поможет
http://delphimaster.net/view/1-1117211366/


 
Torvald   (2005-05-30 22:49) [5]

alex-drob

ОГРОМНЕЙШЕЕ СПАСИБО!
Действительно всё работает!


 
Игорь Шевченко ©   (2005-05-31 10:09) [6]

И альтернативный вариант:

procedure TForm1.CreateParams (var Params : TCreateParams);
begin
 inherited;
 with Params do begin
   Style := (Style or WS_POPUP) and (not WS_CHILD);
   WndParent := HWND_DESKTOP;
 end;
end;

Потом тот же самый вызов функции SetWindowPos в удобном месте, например в TForm1.OnActivate


 
Torvald   (2005-05-31 13:32) [7]

Игорь Шевченко ©   (31.05.05 10:09) [6]

Спасибо, гляну.


 
GrayFace ©   (2005-05-31 16:31) [8]

Игорь Шевченко ©   (31.05.05 10:09) [6]
А почему так происходит?


 
Игорь Шевченко ©   (2005-05-31 16:35) [9]

GrayFace ©   (31.05.05 16:31) [8]


> А почему так происходит?


Сатурн наверное из созвездия Весов выходит, верно ?


 
GrayFace ©   (2005-06-02 21:43) [10]

Игорь Шевченко ©   (31.05.05 16:35) [9]
Сатурн наверное из созвездия Весов выходит, верно ?

Почему же?



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

Форум: "WinAPI";
Текущий архив: 2005.07.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.036 c
14-1120763384
Магнум
2005-07-07 23:09
2005.07.31
Ноутбук и зарядное устройство


14-1119850991
Ega23
2005-06-27 09:43
2005.07.31
Ой, народ, что вчера было!!!


14-1121187204
Soft
2005-07-12 20:53
2005.07.31
Товарищи! Будьте бдительны! Террорист не дремлет!


9-1113573787
Yegorchic
2005-04-15 18:03
2005.07.31
Звезда


3-1119535419
Alex18
2005-06-23 18:03
2005.07.31
Поиск





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский