Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно вывести окно поверх остальных окон? [D3, Win2k]


THandle ©   (2005-12-14 03:48:00) 

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

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

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

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


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

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

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


Alexander Panov   (2005-12-14 19:50:00) [2]

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


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

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

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


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


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


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


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


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

>FormStyle := fsStayOnTop;

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

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


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

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


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

FormStyle := fsStayOnTop; ???


Наверх

Титульная страница Поиск, карта сайта Написать письмо