USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Criar Atalhos no VB6
Diego Magno
não registrado
Postada em 14/11/2008 11:18 hs   
(ficou extenso mas é bem interessante e acho que outros tem essa mesma dúvida, mas não achei no fórum e nem em outros que procurei)

Tenho o seguinte problema:

No VB6 caso você coloque um & (e comercial) ao lado esquerdo de uma letra da propriedade Caption de um Command (Botão bem utilizado no VB6) ele cria uma espécie de Atalho para o Botão (Alt + Letra do lado Esquerda do Caption). Este Atalho funciona super Bem, pois ele executa os Eventos Lost_Focus, Validate e qualquer outro caso o seu Focus esteja em outro componente. Meu problema vem ao criar Atalhos diferenciados! Eu coloco no Form_KeyDown (evento do form de pegar a tecla pressionada) uma função para verificar o KeyCode. Caso este KeyCode for o Atalho que eu quero eu chamo a Sub  do Botão referente (exemplo: Private Sub Command1_Click). O problema esta que caso o Focus esteja em outro componente ele não Válida o mesmo, não passa no Lost_Focus, não passa no Validate, nada. Ou seja, se eu estou em um campo de mascara de Data (dd/mm/yyyy) e o usuário digita 70/90/5678 ele não irá validar o campo e irá executar a função do atalho chamada. Minhas principais duvidas são: Existe uma maneira de eu chamar o Click do Command da mesma maneira que o & (e comercial faz) ou alguma maneira dele validar o campo que esta em foco quando o atalho é chamado. Já tentei colocar um .SetFocus no Command para ver se ele dava o Lost_Focus ou o validate mas ele ainda sim não valida. Alguem sabe de algo que possa me ajudar?

Obs.: No Menu Editor existe um ShortCut que funciona igual o & (e comercial) no Command. A diferença é que no Menu você consegue colocar qualquer tecla e no Caption com & você precisa ter a letra no Caption e deve utilizar o Alt, meu bojetivo é utilizar F1, F2 , F3.... F12 validando o campo que o foco está. Eu faço sim varias verificações no click mas algumas como a validção da data eu faço no validate ou no lost_focus do proprio campo sendo desnecessario revalida-lo no click. Caso não houver outra solução acho que terei que passar as validações todas para um Função, o que deixaria o Form meio pobre usabilidade pois o usuário somente descobre que digitou algo inválido em alguim campo somente quando ele vai tentar gravar e o essencial seria ele saber disso assim que o campo der validate ou lost_focus.

Desde já Obrigado pela Atenção!
     
Ash Katchup
CAXIAS DO SUL
RS - BRASIL
ENUNCIADA !
Postada em 14/11/2008 11:44 hs            
Ja tentou colocar um "DO EVENTS" ao chamar este atalho? Acho que assim o código "Lost_FOCUS" será executado.

__________________

"It is the way of men to make monsters...and it is the nature of
monsters to destroy their makers."

-F.E.A.R. (First Encounter Assault Recon )
   
Diego Magno
não registrado
ENUNCIADA !
Postada em 14/11/2008 12:06 hs   
Bem Isso Mesmo!

Eu dou um .setFocus no botão e em seguida o DoEvents
Dai ele Valida, agora meu problema foi que eu vou precisar colocar uma Variavel boolean para caso algo não validar ele setar true como não validou e sempre estar verificando essa variavel quando usar o atalho mas isso ja me ajudou muito.
Valeu Mesmo!
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página