MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Identificar teclas dependendo da situação

    Compartilhe
    avatar
    biligo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 216
    Registrado : 10/04/2014

    Identificar teclas dependendo da situação

    Mensagem  biligo em Qua 14 Set 2016, 08:12

    Boas galera,

    Tenho os seguintes eventos,

    Código:
    'Ao perder o foco
    Private Sub txtQuant_LostFocus()

        DoCmd.RunCommand acCmdSaveRecord
        DoCmd.GoToRecord , , acNewRec
        Me.txtIdentCardapio.SetFocus
    'Salvar, "ir para" Novo registro e selecionar item para o foco.

    End Sub

    Código:
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    Select Case KeyCode

    Case vbKeyEscape
        DoCmd.RunCommand acCmdSaveRecord
        Me.btnComentar.SetFocus
    Case vbKeyDel
        Call btnExcluir_Click
    Case vbKeyInsert
        Call btnComentar_Click

    End Select

    A questão é que quando tenho o campo txtQuant.Setfocus e pressiono a tecla "Esc" me gera um erro pois é carregado primeiro o comando de ir para criar novo registro e depois
    selecionar o botão comentar que não existiria pois o registro no foi criado.
    Sei que devo usar um If mas como identifico se um campo tem o foco? pesquisei bastante mas não consegui achar um jeito.
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6505
    Registrado : 05/11/2009

    Re: Identificar teclas dependendo da situação

    Mensagem  Alexandre Neves em Qua 14 Set 2016, 20:22

    Boa noite,
    Para identificar o controlo do foco, utilize ActiveControl
    if activecontrol="NomeDoControlo" then ...


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

      Data/hora atual: Ter 21 Nov 2017, 04:35