компьютерный форум
Вернуться   Компьютерный форум > Программирование и вебстроительство > Программирование


Ответ
 
LinkBack Опции темы Опции просмотра
Старый 23.01.2006, 12:32   #1
Пользователи
 
Регистрация: 23.01.2006
Сообщений: 1
По умолчанию

При активации формы получаю значение hWnd формы с помощью API функции GetActiveWindow. Через определённый промежуток времени форма проверяет активна ли она и если нет то её активизирую с помощью SetActiveWindow('ранее полученное значение').Но она активной нестановится? Вот код:
var
Form1: TForm1;
a:HWND
implementation

{$R *.dfm}

procedure TForm1.FormActivate(Sender: TObject);
begin
a:=GetActiveWindow;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var b: HWND;
begin
b:=GetActiveWindow;
If ba then SetActiveWindow(a);
end;

end.

Так же возможны варианты.




Dja-dja вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
23.01.2006, 12:32
Техник
реклама
По умолчанию

Старый 16.05.2006, 05:41   #2
han
Пользователи
 
Регистрация: 12.05.2006
Сообщений: 79
По умолчанию

MicroSoft заявляет так: ни один процесс не обрабатывающий пользовательский ввод, не имеет права ставить формы(окна) поверх остальных.
Другими словами: если твоя программа минимизирована, и ты работаешь с другим окном, то применение SetForegroundWindow - результатов не даст.
Есть конечно способы.
Это присоединение к процессу обрабатываещему пользовательский ввод.
GetCurrentProcessId
AttachProcess
han вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Старый 24.08.2016, 08:01   #3
Пользователи
 
Аватар для NikolaiLer
 
Регистрация: 17.07.2016
Сообщений: 229
По умолчанию Re: Активация формы

Вам нужно копать в сторону работы с процессами, то есть на более низкий уровень. Кроме того вам могут понадобиться таймер для опроса состояния.
NikolaiLer вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Вкл.



Текущее время: 08:50. Часовой пояс GMT.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot
Content Relevant URLs by vBSEO 3.5.0 RC2