Fórum Mensagem perfeita sem falhar acima de qq outro aplicativo #255096

19/10/2004

0

Gostaria de mostrar uma pequena mensagem no canto inferior à direita da tela, igual ao mensseger. Para falar a verdade igual ao mensseger não, igual ao avast anti-vírus, pois este mostra a mensagem perfeitamente sem falhar acima de qualquer outro aplicativo, até mesmo de um jogo, isso mesmo qualquer jogo. E o que é mais importante sem interferir no aplicativo do usuário, ou seja, ele não minimiza o aplicativo ou afeta o teclado ou mouse durante a mensagem.
Estou usando o componente MsnPopup50, porém este falha ao mostrar a mensagem em alguns jogos, pois eles atualizam a tela mais rápido que a mensagem.
Por que o Avast não falha?
Será que é porque ele carrega antes do Windows?
Será que ele escreve diretamente na memória de vídeo?
Ou será que ele roda em alta prioridade no momento da mensagem?

Se alguém tiver alguma função que faz algo acima, eu agradeço.

[b:2164eaa18c][color=red:2164eaa18c]Título editado pelo Moderador (AZ) - Removido: ´Inveja do Avast´
Tópico duplicado removido. - Leia as regras do fórum (AZ)[/color:2164eaa18c][/b:2164eaa18c]


Welgomes

Welgomes

Responder

Posts

20/10/2004

Sanses

ou será que é por que ele tem um refresh maior que a velocidade de atualização do video??

Veja: pelo que eu sei, a atualização de vídeo é medida em fps (frames per second). Um jogo como o Counter Strike vem configurado default para 72 fps. Esta taxa esta ótima, sabe por que? Por que o olho humano não percebe mais do que 60 fps. 61 já seria suficiente. Logo aqueles clientes chatos de lan que querem que o fps no cs chegue a 100 para não dar ´legue´, não sabem o que estão dizendo. Bom mais deixando esta curiosidade de lado, calcule a taxa de atualização do seu monitor e com ela em mãos use o mesmo procedimento que voce usa para colocar esta tela na frente de todas as outras no evento ontimer. Agora a pergunta que não quer calar: Mas não vai ficar pesado para o sistema?? Olha a resposta é simples, é apenas uma mensagem não é, logo ela será desabilitada ou até mesmo fechada pelo cliente, além do mais o do Avast fica pesado??

Sanses

PS: no timer 1000 = 1 segundo
1000 / 72 fps = 13,89
Se voce colocar seu timer para dar um refresh na tela de 13,89 com certeza voce terá a tela visivel, até mesmo se chover no monitor. :P;

procedure PS;
begin
showmessage(´Mas este tempo é muito pequeno.´+#13+´Acredito que dê para usar uma taxa maior.´);
end;


Responder

Gostei + 0

20/10/2004

Welgomes

:wink:
Sanses,
Nossa! Quando analisei o código do componente na 1º vez não encontrei nenhum TTimer. Após a sugestão que você me deu e ao
analisar o código minusiosamente encontrei 3 timer´s. Acho que tava de cabeça quente :lol:
São eles tmrExitTime, tmrScrollTimer e tmrScrollDownTimer.
Vou mudar o intervalo deles e ver o que acontece.

Valeu.


Responder

Gostei + 0

21/10/2004

Sanses

E ai...

Depois que voce fizer as modificações posta o resultado, valew??

Espero que tenha sucesso
Até
Sanses


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar