Página 1 de 1
Retorno de Foco
Enviado: 04 Mar 2008 08:44
por gralak
Iai Galera to precisando da ajuda de vcs novamente
Eu possuo um form declarado com CHILD que é chamado na função ON INIT do meu form MAIN, após a criação deles o focu fica na janela CHILD, o meu problema a saber como eu faço pra depois da criação mandar esse foco pra janela MAIN novamente .
Obs. * Ja utilizei o nome do textbox.setfocus e não funciona..
* depois da criação do form CHILD o nome do form MAIN .setfocus e tb não funciona

???????????
Enviado: 04 Mar 2008 09:02
por MARCELOG
Olá,
é só vc fechar a child e pronto.
Por outro lado, se vc precisar desse formulário (eu gosto de chamar de janela) aberto, use como modal.
Destarte, tente usar nomewindowmain.setfocus (!)
MarceloG
Enviado: 04 Mar 2008 09:51
por gralak
mas esse nomewindowmain.setfocus (!) se da onde ?
Depois que se da o janela.active do form MODAL

Enviado: 04 Mar 2008 10:03
por MARCELOG
Para fechar a janela child use:
nomejanelachild.release
Isso, automaticamente, fecha a janela e retorna o foco para a janela chamadora.
Para mudar o foco para a janela main (sem fechar a child - não sei se vai funcionar sendo uma child) use:
nomejanelamain.setfocus
Essa ação deve estar em um botão ou num evento específico da janela child.
@ .... BUTTON
...
ACTION nomejanelamain.setfocus
MarceloG
Ps: só para perceber a diferença, crie uma janela child e uma modal.
Enviado: 04 Mar 2008 16:19
por gralak
Essa de mandar o foco com o main.setfocus tb não funciona
Eu chamo o form child no EVENTO ON INIT do form main ...
Enviado: 05 Mar 2008 08:33
por MARCELOG
Então vamos lá Homem Aranha,
o que vc precisa exatamente?
Manter duas janelas ativas ou apenas uma.
Se vc quer manter apenas uma, o uso da cláusula child está correto.
Enquanto ela não for fechada, s.m.j., não é possível mudar o foco para a jnela anterior, pois a child (filha) impõe essa condição.
A janela "dialog" ou "modal" admitem a situação anterior, ou seja, mudança de foco entre janelas.
Observe que nessa condição, a main e a janela? aparecem na barra de status, enquanto na "child" somente aparece a janela main.
Sacou!?
Vc quer uma tela para login de usuário?
Quer apresentar algum aviso?
Informe a necessidade e vamos ver se a gente consegue te ajudar né.
MarceloG
Enviado: 06 Mar 2008 11:38
por gralak
BLZ MARCELOG
O que eu preciso é manter as duas janelas abertas essa janela declarada como CHILD.
Se eu fechar a Janela o Foco volta como vc havia dito, mas se clico no textbox por exemplo o foco vai para a janela main para o textbox e a janela child continua aberta.
O fato é o seguinte eu preciso dessa janela child pois ela contem um timer que fica atualizando e mostrando informações para o usuario..
Será que consegui me expressar melhor agora

vlw galera té+++
Enviado: 07 Mar 2008 09:43
por MARCELOG
Bem...,
e não dá para colocar o timer na janela main?
Por outro lado, como não uso o timer em minhas aplicações não sei em quais tipos de janelas ele atua.
Entretanto, veja o código fonte da função inputbox.
Digite f3 e mande o windows prourar arquivos contendo a palavra inputbox.
Com certeza vai aparecer o arquivo (acho que é h_widows.prg ou algo assim).
Veja se a sua lógica ou a situação te ajuda.
MarceloG.
Enviado: 08 Mar 2008 18:55
por Stanis Luksys
Ja q ele tem um timer, é só colocar na função do timer, para dar foco na janela q vc quer... hehe