Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.138.141.202] |
|
Сообщ.
#1
,
|
|
|
Есть приложение, которое при запуске становится то-ли поверх всех окон, или как-то по другому (игра например), и поверх этой программы мне нужно вывести свою форму, чтоб моя программа перекрыла ту, что игра. Подскажите как это можно сделать в Delphi XE?
Ещё если можно то сделать так, чтобы активной оставалась игра, и в её окно я мог вставить текст из буфера (это я уже умею). Для тех кто в этом понимает, игра это CHC (чемпион). Нужно перекрыть её окно, вставить игровой код и зайти в игру, и только затем убрать свою форму. PS свойства формы StayOnTop не работает. Когда приложение запущено, поверх даже диспетчер задач не вылазит, помогает только нажатие кнопки WIN |
Сообщ.
#2
,
|
|
|
procedure TForm1.FormCreate(Sender: TObject); begin SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE); SetWindowLong(Handle,GWL_EXSTYLE,GetWindowLong(Handle,GWL_EXSTYLE) or WS_EX_NOACTIVATE); end; |
Сообщ.
#3
,
|
|
|
Вот так например:
//Использование SetWindowTopMost(Handle, True); function SetWindowTopMost(hWnd: HWND; bTopMost: boolean): boolean; begin Result := SetWindowPos(hWnd, HWND_NOTOPMOST + WORD(bTopMost), 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE); end; |