none
Tempo entre um click e outro ( button windows form ) RRS feed

  • Pergunta

  • Bom dia

    estou desenvolvendo uma aplicação windows forms com vb.net 2008 standard
    tenho uma tela onde o usuário clica em um botão este botão grava as informações no banco de dados e sai da tela

    mas o usuário tem clicado 300 vezes em 1 segundo no botão,
    apesar de parecer sem lógica nenhuma, o sistema grava 2 vezes a mesma informação no banco de dados

    tem como eu limitar o tempo de click do usuário no botão, ex. o usuário clicou em gravar agora,
    ele só vai poder clickar novamente daqui a 2 segundos ????
    quinta-feira, 26 de novembro de 2009 12:53

Respostas

  • Na verdade é um problema de logica ai....  apenas trava o botao nao eh arrumar o problema

    Formas de arrumar isso:

    a)
    o Usuario Clicou em Salvar
    Trava o formularios (form1.Enabled = false)
    processa a inclusao
    trata os erros
    limpa os valores do formulario
    mostra message box "Inclusao com sucesso"
    destrava o formulario...

    B)
    Verifica se a informação ja existe na base antes da inclusao... se existir retorna mensagem para o cliente avisando do mesmo...

    e por ai vai...

    What would Brian Boitano do ?
    • Marcado como Resposta Alexandre Marchi quinta-feira, 26 de novembro de 2009 21:26
    quinta-feira, 26 de novembro de 2009 18:24
    Moderador

Todas as Respostas

  • Crie um objeto Timer e configure o tempo para 2000 (2 segundos), ao clicar no botão você desabilita o botão e inicia a contagem do Timer, daí no evento Tick do Timer você volta a habilitar o botão.
    http://blogs.julianonunes.com (Português) | http://weblogs.asp.net/julianonunes (English) http://twitter.com/julianonunes | http://www.linkedin.com/in/julianonunes | http://www.facebook.com/julianonunes
    quinta-feira, 26 de novembro de 2009 18:03
  • Na verdade é um problema de logica ai....  apenas trava o botao nao eh arrumar o problema

    Formas de arrumar isso:

    a)
    o Usuario Clicou em Salvar
    Trava o formularios (form1.Enabled = false)
    processa a inclusao
    trata os erros
    limpa os valores do formulario
    mostra message box "Inclusao com sucesso"
    destrava o formulario...

    B)
    Verifica se a informação ja existe na base antes da inclusao... se existir retorna mensagem para o cliente avisando do mesmo...

    e por ai vai...

    What would Brian Boitano do ?
    • Marcado como Resposta Alexandre Marchi quinta-feira, 26 de novembro de 2009 21:26
    quinta-feira, 26 de novembro de 2009 18:24
    Moderador