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

Вниз

Как переключиться на приложение.   Найти похожие ветки 

 
Vladislav ©   (2002-08-02 16:10) [0]

Как переключиться на какое-либо приложение, т.е сделать активным? К примеру, чтобы моя прога становилась активна по таймеру.


 
Виктор Щербаков ©   (2002-08-02 16:17) [1]

SetForegroundWindow


 
Eugene Lachinov ©   (2002-08-02 16:18) [2]

procedure TForm1.Timer1Timer(Sender: TObject);
var
hForeGround : HWnd;
begin
hForeGround := GetForegroundWindow;
AttachThreadInput(GetWindowThreadProcessId(hForeGround, nil),
GetWindowThreadProcessId(Handle, nil), True);
SetForegroundWindow(Handle);
end;


 
Vladislav ©   (2002-08-02 16:24) [3]

to Eugene Lachinov
Спасибо.


 
Виктор Щербаков ©   (2002-08-02 16:41) [4]

При этом нужно принимать во внимание побочные эффекты.
Например, пользователь набирает текст не глядя на экран, а тут Ваша программа решила забрать себе фокус клавиатурного ввода. Естественно пулучится лажа. Вызов же SetForegroundWindow без AttachThreadInput приведет к тому, что кнопка окна вашего приложения на таскбаре будет мигать и привлечет внимание пользователя, когда тот посмотрит на экран. Иногда это предпочтительней.



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
1-48114
anod
2002-08-05 12:13
2002.08.15
ListView


14-48296
Феликс
2002-07-20 22:14
2002.08.15
Зачем в сеть пускать свои бесплатные проги?


6-48224
ole
2002-06-01 07:45
2002.08.15
Отключение клиента TClientSocket.


1-48042
LVG
2002-08-03 20:59
2002.08.15
как выдернуть иконки с ярлыков


3-47945
Sword
2002-07-25 18:57
2002.08.15
DBGrid