usuário(s) online!

LER ARTIGO
  Artigos Recentes
Todos os Artigos
Mais Votados
Artigos com Arquivos
Por Categoria

  Dicas Recentes
Todas as Dicas
Mais Votadas
Dicas com Arquivos
Por Categoria

  Downloads
Fórum Delphi
E-Zines Anteriores
Notícias
Manifesto Tecnocolor
Nossa Lojinha
Como usar o Site?


  Cadastre-se
Alterar Cadastro
Login/Logout
Escrever Artigos
Escrever Dicas
Meus Artigos
Minhas Dicas


  Contate-nos
Você tem Site?
Indique para Amigos

Colocar form no canto inferior direito da tela
Colocar form no canto inferior direito da tela
Delphi 7.x Delphi 8 for .Net  
Categoria:
Outros
Nível de Habilidade:
Classificação:
Inserção:
06/03/2009
Palavras Principais:
Como colocar form no canto da tela?
Número de Votos :
0
Usuário: CLAUDEMYR FREITAS DE MEDEIROS
Referência:

Questão/Problema:

Como colocar form no canto da tela?

Resposta:

Oi Pessoal

estou fazendo uma aplicação cujo form principal é pequeno e é executado no tray, quando eu dou clique duplo o form pirncipal é mostrado só que no centro da tela e eu gostaria que ele fosse mostrado sempre no canto da tela!!

ObrigadoVisitante, primeiramente, altere a propriedade Position do form para poDesigned; depois para garantir que seu form seja mostrado sempre no canto inferior-direito obdecendo a visibilidade ou não da barra de tarefas (taskbar - aquela do botão Iniciar) ou qualquer outra barra de tarefas personalizada que possa ser configurada para manter-se visível ou auto-ocultar, utilize o seguinte código no evento OnShow do form:
CODE
procedure TForm1.FormShow(Sender: TObject);
var
R :TRect;
begin
if SystemParametersInfo(SPI_GETWORKAREA, 0, @R, 0) then
SetBounds(R.Right -Width,
R.Bottom -Height,
Width, Height);
end;
Já se você quizer que a janela fique bem no canto da tela, sem levar em conta a visibilidade da barra de tarefas (taskbar):
CODE
procedure TForm1.FormShow(Sender: TObject);
begin
SetBounds(GetSystemMetrics(SM_CXSCREEN) -Width,
GetSystemMetrics(SM_CYSCREEN) -Height,
Width, Height);
end;
Obs: Ambos funcionarão bem quando você utilizar o Show e Hide (parece ser seu caso pelo post). Já se a aplicação for minimizada para a barra de tarefas, ao clicar no icone dela para torná-la visível, e neste meio tempo tiver sido modificada a visibilidade da barra de tarefas este método pode não funcionar corretamente. Tentei, com OnActivate, WM_SYSMESSAGE com SC_RESTORE e nada de passar por um desses eventos e posicionar corretamente a janela para esta situação.

Abraços



AVALIE ESTE ARTIGO !
Sua Avaliação:
Ruim
Excelente

 0 COMENTÁRIO(S) PARA ESTE ARTIGO