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

Вниз

Как правильно вывести окно поверх остальных окон?   Найти похожие ветки 

 
THandle   (2005-12-14 03:48) [0]

Вот этот код работает правильно:

procedure TForm1.Timer1Timer(Sender: TObject);
var hWindow : THandle;
begin
 hWindow:=Application.Handle
 ShowWindow(hWindow,SW_MINIMIZE);
 ShowWindow(hWindow,SW_RESTORE);
end;

Как можно вывести окно поверх остальных без предварительного сворачивания?

(SetForegroundWindow(hWindow); - это не работает - у меня win2k)


 
Васяня   (2005-12-14 05:28) [1]

FormStyle := fsStayOnTop; ???


 
Игорь Шевченко ©   (2005-12-14 10:48) [2]

SetWindowPos(..., HWND_TOPMOST, ....)


 
THandle   (2005-12-14 16:44) [3]

>FormStyle := fsStayOnTop;

> SetWindowPos(..., HWND_TOPMOST, ....)

Это всё работает, но надо что бы форма просто появлялась поверх всех окон и была активна, но не оставалась там. (Что бы работало как в ранее приведённом коде, но без предварительного сворачивания).


 
Игорь Шевченко ©   (2005-12-14 18:08) [4]


> но надо что бы форма просто появлялась поверх всех окон
> и была активна


SetForegroundWindow со всеми примечаниями


 
THandle   (2005-12-14 19:22) [5]

>SetForegroundWindow со всеми примечаниями

Оно делает активной только кнопку программы на панели задач, а окно так и остаётся за другими окнами:


procedure TForm1.Timer1Timer(Sender: TObject);
begin
 SetForegroundWindow(application.Handle);
end;


 
Alexander Panov ©   (2005-12-14 19:50) [6]

http://forum.sources.ru/index.php?showtopic=123826&view=showall


 
THandle   (2005-12-14 21:02) [7]

Всем спасибо, нашёл работающий код:

SendMessage(GetDesktopWindow(), WM_SYSCOMMAND, SC_HOTKEY,application.Handle);



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
4-1134732879
Tapok
2005-12-16 14:34
2006.03.05
Не сохраняется иконка программы в файл


1-1138790667
ALS
2006-02-01 13:44
2006.03.05
XPManifest + LoadCursor = глюк


2-1140372864
sashaka
2006-02-19 21:14
2006.03.05
Как узнать дату?


3-1137207954
psyBNC
2006-01-14 06:05
2006.03.05
ПРОБЛЕМА С БАЗОЙ ДАННЫХ


4-1134593589
Free0n
2005-12-14 23:53
2006.03.05
Работа с реестром