Fórum Forçar Foco em Form aberto com Show... #460693
11/11/2013
0
Tenho uma aplicação em que abro os forms usando o showmodal, mas tem um único form que abro
usando apenas o Show, estou tendo um problema no evento OnKeyDow deste form.
Exemplo: Digamos que eu tenha um algorítimo chamado pelo F12 no OnKeyDow do FormPrincipal e um outro algorítimo também chamado pelo F12
no OnKeyDow do FormAtendimentos(esse é o form que abro usando o Show), se eu pressionar F12 no FormAtendimentos ele executa o algorítimo que está
no FormPrincipal, a não ser que eu dê um clique no Formatendimentos.
Sei que isso está acontecendo pq o Formatendimentos ao ser chamado pelo show não está recebendo o foco ou não está ficando "ativo", mas já tentei fazê-lo receber
o foco e não consegui.
A última maneira que tentei foi essa SetForegroundWindow(Formatendimentos.Handle);
Alguém pode me ajudar?
Rafael Mota
Curtir tópico
+ 0Posts
21/11/2013
Rafael Mota
Gostei + 0
21/11/2013
Marcos Oliveira
Att,
Marcos
Gostei + 0
21/11/2013
Rafael Mota
Att,
Marcos
Ainda não havia tentado, mas infelizmente ainda não deu certo. O que me deixa mais intrigado é que, se eu chamar o Form atendimento através do atalho ele vem com o foco
if (Key = VK_F7) and AC_SUPORTE_HELP_DESK.Enabled = True then
begin
if not VerificaPermissao('0014','Help Desk',iCodUsu,False,Self) then
Exit;
FormAtendimentos:= TFormAtendimentos.Create(self);
FormAtendimentos.Show;
end;Só não vem se eu clicar no botão(o botão tem o mesmo código, com exceção da primeira linha). Se tiver mais alguma ideia, agredeço.
Gostei + 0
22/11/2013
Augusto Angelim
if NomeDoForm.CanFocus then NomeDoForm.SetFocus
Então seu código ficaria:
if (Key = VK_F7) and AC_SUPORTE_HELP_DESK.Enabled = True then
begin
if not VerificaPermissao('0014','Help Desk',iCodUsu,False,Self) then
Exit;
FormAtendimentos:= TFormAtendimentos.Create(self);
FormAtendimentos.Show;
// Controle do FOCO
if FormAtendimentos.CanFocus then
FormAtendimentos.SetFocus;
//
end;
Gostei + 0
22/11/2013
Rafael Mota
pois coloco o mesmo código em um Speedbutton e funciona(o form abre com o foco) .
Gostei + 0
24/09/2015
Olmiro Callai
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)