Form de aviso sempre em primeiro plano

Delphi

21/09/2011

Ola galera estou necessitando de uma ajuda de vcs. Eu tenho um Form de aviso q é mostrado sempre q o computador é ligado (só é mostrado caso exista aniversariantes no dia), e nele tem um botão "Ver" e outro "Sair".
O problema é o seguinte, esse Form não pode sair do primeiro plano nunca, ele tem sempre q ficar visivel. Encontrei varios comandos para fazer isso, porem, uns não funcionão, e outros funcionaram mais, quando clico no no icone da area de trabalho do Windows ele sai do plano.
O q preciso é q ele ficasse igual a janela popup do msn (aquela q é mostrada quando um contado entra, ou quando um Email é recebido) que nunca sai do plano de visão, nem quando e clicado no icone da area de trabalho do Windows, a unica difereça od meu Form em relação ao do msn, é q ele não vai sumir sozinho depois de um tempo com o do msn.
Eu já pesquisei aqui no forum, em outros tbm, mais não encontrei comando algum q deixe o meu Form de aviso igual ao aviso do msn.
Se alguem puder me ajudar eu ficarei muito grato.
Obriado desde já a quem puder dar essa forçinha.....abraços
Carlos Catanduva

Carlos Catanduva

Curtidas 0

Melhor post

Adriano Okama

Adriano Okama

21/09/2011

Quanto à exibição do form após pressionar o botão da área de trabalho use um timer

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Application.Restore;
end;
GOSTEI 1

Mais Respostas

Adriano Okama

Adriano Okama

21/09/2011

Essas propriedades são editadas diretamente no Object Inspector do Delphi:

Form1.FormStyle := fsStayOnTop;
Form1.AlphaBlend:= true;
Form1.AlphaBlendValue := 200;
GOSTEI 0
Adriano Okama

Adriano Okama

21/09/2011

esqueci, se caso o usuário minimizar o Form use esse código.
Embora seja possível mudar a propriedade do form para BorderStyle = bsNone.

procedure TForm1.FormCreate(Sender: TObject);

begin
  Application.OnMinimize := FormMinimized;
end;

procedure TForm1.FormMinimized(Sender: TObject);
begin
  Application.Restore;
end;
GOSTEI 0
Carlos Catanduva

Carlos Catanduva

21/09/2011

Obriaga Adriado pela dica, funcionou legal do jeito q eu queria e sem a necessidade de digitar muitos códigos como vi por ai.
Aproveitando deixa eu tirar uma outra duvida minha.
Eu fiz o cadastro de cliente simples, ai eu criei esse form de Aviso que é outro executavel que não tem nada haver com o cadastro de clientes q sitei. Esse Form de avis vai iniciar com o Windows ocultamente, ai coloquei um componente Timer que depois de um tempo vai inicar uma consulta SQL na data de nascimento dos clientes no banco da outra aplicação.
Ai se algum se existeir algum cliente aniversariando no dia ele mostra esse Form de aviso (de onde será possivel abrir o Form do cadastro de cliente), caso não encontre esse Form de aviso será fechado.

Minha duvida é essa:

Esssa forma q estou fazendo é correta? ou não? Se não For, alguem poderia me explicar a forma masi correta de fazer esse sistema?

Obrigado desde ja amigos pela ajuda.....
GOSTEI 0
Carlos Catanduva

Carlos Catanduva

21/09/2011

Ninguem ai pra comentar o meu post anterior pra mim seber se o jeito q estou fazendo está correto ou não?
GOSTEI 0
Otavio Pimenta

Otavio Pimenta

21/09/2011

Procure no forum sobre Postmessage e sendmessages, terá que trabalhar com handles dos formulários

espero que ajude
GOSTEI 0
POSTAR