Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lucascolferai

Implantar sessão

Recommended Posts

Olá pessoal.

 

Estive olhando no forum e não encontrei nenhum tópico que atendesse à minha necessidade, portanto lá vai.

 

Preciso implementar um esquema de sessão (tempo limite de inatividade) em um sistema em Delphi. Tenho algumas idéias de como desenvolver, mas gostaria de ouvir opiniões a respeito; sem alguém já desenvolveu, pesquisou ou ao menos pensou em um recurso assim para um sistema em Delphi.

 

Meu sistema é um ERP para uma papelaria, desenvolvido sob medida para um cliente, com banco Firebird 1.5. Tenho um form principal, que é a raiz para todos os recursos do sistema. Abro todas as janelas usando o comando Showmodal. Tem ainda um sistema de usuário (login/logoff), também com janela aberta em modal.

 

Alguma sugestão?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Marcio,

 

Eu tembém pensei nisso. Mas minha dúvida é a seguinte: como eu abro outros forms em modal, o timer conseguirá perceber que houveram ações nesses outros forms e zerar o timer?

 

:huh:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca numa datamodule. a parte mais chata. em cada evento reseta algum valor para 30, ai a cada segundo o time diminui o valor, se for 0 acaba

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcio, Rento,

 

Estive analisando aqui. Acho que uma boa solução seria:

- Colocar o Timer no form inicial;

- Criar um form template, herdado por cada form do sistema;

- Nos eventos onMouseMove, onKeyPress, onActivate e onClose do template, chamar uma função que reinicializa o contador regressivo do timer;

 

Minha dúvida: se o cursor estiver dentro de um TMemo, por exemplo, e a pessoa estiver digitando ali por um tempo superior ao da sessão, o evento onKeyPress do form será executado?

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.