![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как переключиться на приложение. [D6]
Vladislav © (2002-08-02 16:10:00)Как переключиться на какое-либо приложение, т.е сделать активным? К примеру, чтобы моя прога становилась активна по таймеру.
Виктор Щербаков (2002-08-02 16:41:00) [1]При этом нужно принимать во внимание побочные эффекты.
Например, пользователь набирает текст не глядя на экран, а тут Ваша программа решила забрать себе фокус клавиатурного ввода. Естественно пулучится лажа. Вызов же SetForegroundWindow без AttachThreadInput приведет к тому, что кнопка окна вашего приложения на таскбаре будет мигать и привлечет внимание пользователя, когда тот посмотрит на экран. Иногда это предпочтительней.
Vladislav (2002-08-02 16:24:00) [2]to Eugene Lachinov
Спасибо.
Eugene Lachinov (2002-08-02 16:18:00) [3]procedure TForm1.Timer1Timer(Sender: TObject);
var
hForeGround : HWnd;
begin
hForeGround := GetForegroundWindow;
AttachThreadInput(GetWindowThreadProcessId(hForeGround, nil),
GetWindowThreadProcessId(Handle, nil), True);
SetForegroundWindow(Handle);
end;
Виктор Щербаков (2002-08-02 16:17:00) [4]SetForegroundWindow