Ir ao conteúdo
  • Cadastre-se

Exibir mensagem caso usuário demore a digitar


Mateus_Sousa

Posts recomendados

Olá. Alguém teria ideia de como eu poderia fazer em C um programa que pedisse algo do usuário e se o usuário demorasse por exemplo 5 segundos aparecesse uma mensagem de aviso para o mesmo dizendo que demorou a digitar e pedisse novamente para que o usuario digitasse algo? Desde já agradeço a atenção.

Link para o comentário
Compartilhar em outros sites

Exatamente como o @MassakiMsk disse, você poderia utilizar um thread que conta o tempo, poderia usar um sleep, mas isso seria desaconselhavel ja que o thread inteiro iria 'dormir', e no caso ele também teria que detectar a atividade do usuário, e então quando não há certa atividade durante um certo tempo ele poderia mostrar a mensagem, então a logica é a seguinte:

Citação

Variavel cmax = 10//segundos maximo

Variavel contador = 0//contador de tempo

Variavel atividades = 0//contador de atividade

 

Thread tempo

    se contador == cmax{

    atividades > 0? {

      se sim continuar

      se nao mostrarMensagem

      }

     }

    //verificar alguma atividade

    //como obter estado das teclas, etc

    dormir(1 segundo)

    

Sendo que você poderia usar um thread para ver se esta tendo atividades e contar o tempo, e outro para mostrar mensagem quando for o momento certo.

 

Para colocar um thread no seu codigo, é simples, basta colocar a biblioteca:

#include <pthread.h>

 

Criar uma struct thread:

pthread_t thread;

 

Criar uma função que sera usada como thread, sendo que a chamada tem que ter parâmetro void *:

void *funcaoThread(void *);

 

Para iniciar a função thread, adicione o seguinte comando ao programa(pode colocar em int main() ):

pthread_create(&thread,NULL,funcaoThread,NULL);

 

sendo que:

os argumentos foram criados acima.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...