Fórum Programa ficar ON TOP ( deslocar desktop) #377880

19/05/2010

0

Bom dia amigos, estou com um problema, desenvolvi uma aplicação que deve rodar com uma barra no topo do desktop, porém não consigo deixar ela ON TOP no desktop. Vejam bem, eu já configurei meu form como TOPMOST
e consigo deixá-lo visível acima de outras aplicações, porém o efeito que eu desejo é ter minha aplicação rodando como se fosse um TOPBAR, semelhante a SIDE BAR do windows vista que desloca e ocupa determinada área do desktop. Quem já utilizou o programa winamp e o configurou para TOP, tem uma idéia do efeito que desejo.

Vejam no detalhe abaixo a barra de título da aplicação foi deslocada para baixo e a aplicação principal ficou acima no desktop.





Bom amigos espero que tenha conseguido passar minha dúvida, se alguém tiver uma dica de como é possível realizar essa tarefa ficarei muito grato pela dica.
Jose Nascimento

Jose Nascimento

Responder

Posts

19/05/2010

Lartedesign

Ola JOSE HENRIQUE

Na verdade parece muito simples siga os procedimentos ::

selecione o seu FORM  e na propriedade dele coloque

Align > Altop  =  Deixa sua aplicação no topo

Position >  poDesktopCenter  =  Redimensiona sua aplição pelo Desktop
   
FormStyle > fsStayOnTop = Deixa a aplicação por cima dos outros executaveis

Ou simplismente coloque no evento OnCreate do seu form o seguinte cod.


procedure TForm1.FormCreate(Sender: TObject);
begin

Align := alTop;

Position := poDesktopCenter;
FormStyle := fsStayOnTop;

end;
    




Espero ter ajudado
Abraços


lartedesign

Responder

Gostei + 0

19/05/2010

Jose Nascimento

Laerte as propriedades do form já estão setadas conforme o sugerido, porém mesmo assim o form ocupa a parte superior, mas ao abrir outra aplicação a barra de título fica por baixo da minha aplicação.
O efeito desejado é, conforme a figura que minha aplicação tomasse para si uma parte do desktop, forçando que outra aplicação ao abrir fique abaixo de sua linha ( a exemplo do winamp)

Para completar eu ainda especifiquei outras propriedades como a seguir:

  SetWindowPos(Handle,
              HWND_TOPMOST,
              0, 0, 0, 0,
              SWP_NOMOVE or SWP_NOSIZE or SWP_SHOWWINDOW);


onde  HWND_TOPMOST deixa minha aplicação sempre visível no desktop e outros efeitos ....



Obrigado pela colaboração.



Responder

Gostei + 0

19/05/2010

Lartedesign

OK se ajudou e resolveu o problema mude o status para definidO ....


ATT


Leandro
lartedesign
Responder

Gostei + 0

20/05/2010

Jose Nascimento

OK se ajudou e resolveu o problema mude o status para definidO ....


ATT


Leandro
lartedesign


Desculpe Laerte, mas acho que não me expressei bem, o problema permanece, uma vez que o efeito parecido com o winamp ainda não foi alcançado.


Responder

Gostei + 0

19/01/2013

Vinícius Valle

Estou com a mesma dificuldade, alguém conseguiu resolver isso?
Responder

Gostei + 0

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

Aceitar