MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


    Navegar em rótulos utilizando as setas e abrindo form's ao apertar enter

    avatar
    Convidado
    Convidado


    Navegar em rótulos utilizando as setas e abrindo form's ao apertar enter Empty Navegar em rótulos utilizando as setas e abrindo form's ao apertar enter

    Mensagem  Convidado 18/6/2012, 14:36

    Em ajuda a um colega do fórum.

    Este exemplo utiliza o Keycode para ir de rótulo em rótulo utilizando a mudanca do nome do mesmo
    Os rótulos são nomeados com parte do nome em comum seguido de um numero, ao clicar na seta a parte número é incrementada em +1 ou -1, podendo então modificar algumas propriedades do mesmo, como se simulasse um evento ao receber foco, coisa que não é inerente ao mesmo.

    Na parte de abertura de forms, ao apertar o enter, checa o texto contido no rótulo, na igualdade aobre o form especificado na instrução.

    https://dl.dropbox.com/u/26441349/NavegandoRotulos.rar

    Tópico que originou a solução: http://maximoaccess.forumeiros.com/t8180-movimentacao-de-setas

    Código:

    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    On Error GoTo TrataErro
    If KeyCode = 40 Then
            If IsNull(StrObj) = True Then
                StrObj = Val(0)
            Else
                Me("lb" & StrObj).ForeColor = vbBlack
                StrObj = StrObj + Val(1)
                Me("lb" & StrObj).ForeColor = vbRed
                KeyCode = 0
            End If
        End If

    If KeyCode = 38 Then
            If IsNull(StrObj) = True Then
                StrObj = Val(0)
            Else
                Me("lb" & StrObj).ForeColor = vbBlack
                StrObj = StrObj - Val(1)
                Me("lb" & StrObj).ForeColor = vbRed
                KeyCode = 0
            End If
        End If
       
    If KeyCode = 13 Then
                If Me("lb" & StrObj).Caption = "Rotulo 1" Then
                    MsgBox "Abra Form 1"
                ElseIf Me("lb" & StrObj).Caption = "Rotulo 2" Then
                    MsgBox "Abra Form 2"
                ElseIf Me("lb" & StrObj).Caption = "Rotulo 3" Then
                    MsgBox "Abra Form 3"
                ElseIf Me("lb" & StrObj).Caption = "Rotulo 4" Then
                    MsgBox "Abra Form 4"
                ElseIf Me("lb" & StrObj).Caption = "Rotulo 5" Then
                    MsgBox "Abra Form 5"
                End If
    KeyCode = 0
    End If
    Exit Sub
    Exit_TrataErro:
        DoCmd.Hourglass False
        DoCmd.Echo True
     Exit Sub
     
    TrataErro:
    If Err.Number = 2465 Then
      Resume Next
    Else
     DoCmd.Hourglass False
     DoCmd.Echo True
     Msg = "Erro # " & Str(Err.Number) & " gerado na " & Err.Source _
     & vbNewLine & vbNewLine & "Descrição: " & Err.Description _
     & vbNewLine & vbNewLine & "Por favor contate o Administrador de Sistema."
     MsgBox Msg, vbMsgBoxHelpButton + vbCritical, "Erro", Err.HelpFile, Err.HelpContext
     Resume Exit_TrataErro
    End If
    End Sub

    Cumprimentos.

      Data/hora atual: 21/11/2024, 19:27