Ir para conteúdo
Fórum Script Brasil
  • 0

Foco em ToolStrip


Digowarta

Pergunta

Pessoal, tenho uma toolstrip em um form, com um botão salvar e um botão fechar.

Essa TS fica no final do form, ou seja, quando executar o lostfocus do ultimo campo, o sistema deve setar o foco no primeiro botão da ToolStrip, e ao pressionar TAB, ir para o próximo botão, mas não estou conseguindo, os botões da ToolStrip são meio limitados, ex. não tem o evento LostFocus, GotFocus... etc

alguém tem alguma solução pra isso?

obrigado

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Declare na Declarations:

Dim tab_pres As Integer

Depois vá no evento Key Up do formulário e declare os seguintes códigos:

Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
        If e.KeyCode = Keys.Tab Then
            If tab_pres = 3 Then 'verifiqua o número do contador de index 
                tab_pres = 0 'retorna o contador para 0 já que não existe controle com index maior que 2
            End If
            Select Case tab_pres
                Case "0" 'Tabindex para o btn1
                    btn1.Select() 'passa o foco para o btn1
                Case "1" 'Tabindex para o btn2
                    Btn2.Select() 'passa o foco para o btn2
            End Select
            tab_pres = tab_pres + 1
        End If
    End Sub
Deve funcionar perfeitamente. Espero ter ajudado. :rolleyes: Se o ToolStrip tiver uma caixa de texto aí você faz o seguinte: Adiciona um Module ao projeto e coloca os códigos a seguir nele:
Module Module1
    Public tab_pres As Integer = 0
    Public Sub Tab_Control()
        If tab_pres = 3 Then 'verifiqua o número do contador de index 
            tab_pres = 0 'retorna o contador para 0 já que não existe controle com index maior que 2
        End If
            Select Case tab_pres
                Case "0" 'Tabindex para o btn1
                    Form1.btn1.Select() 'passa o foco para o btn1
                Case "1" 'Tabindex para o btn2
                    Form1.Btn2.Select() 'passa o foco para o btn2
            End Select
            tab_pres = tab_pres + 1
     End Sub
End Module
E muda os códigos do KeyUp do Formulário para:
Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
        If e.KeyCode = Keys.Tab Then
            Tab_Control()
        End If
End Sub

Assim se a ToolStrip Tiver caixas de texto (TextBox) basta colocar os mesmo códigos do keyUp do formulário no KeyUp da Caixa de texto.

Claro que é preciso modificar o Procedimento "Tab_Control" para focar outros objetos. :closedeyes:

Editado por quintelab
Adicionado BBCode Code
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...