> Imam problem kada klijent pritisne "windows" dugme koje je default pored 'ctrl' dugmeta u prvom donjem redu
> na tastaturi. Naravno izgubi se fokus aplikacije u kojoj radi, i klijent vise ne moze da unosi nista, a da sam toga naravno
> nije ni svestan. Da li postoji odredjeni 'trik' da to sprecim.
Čim se ponovo vrati u program (npr Alt + Tab) dobiće i fokus, a ako želiš da potpuno sprečiš izlazak iz tvog programa, možeš ga postaviti kao shell (umesto explorera) ili kada stigne WM_ACTIVATEAPP za deaktivaciju, možeš ponovo forsirati vraćanje tvog programa na vrh. Evo Delphi primera za to, verujem da ćeš se snaći jer je u pitanju čist WinApi.
Code:
procedure ActivateApplication;
var
ActiveThreadId, CurrentThreadId: DWORD;
begin
if GetForegroundWindow <> Application.Handle then
begin
ActiveThreadId := GetWindowThreadProcessId(GetForegroundWindow, nil);
CurrentThreadId := GetCurrentThreadId;
AttachThreadInput(CurrentThreadId, ActiveThreadId, True);
SetForegroundWindow(Application.Handle);
AttachThreadInput(CurrentThreadId, ActiveThreadId, False);
BringWindowToTop(Application.Handle);
end;
end;