FORM Transparente

14/12/2003

0

[b:024fc46485]Gostaria de saber como colocar o form transparente e tb colocar uma figura nele de modo q quando cliar na figura e arrastá-la o form arrasta junto com ela[/b:024fc46485]


Tulio.sergio

Tulio.sergio

Responder

Posts

15/12/2003

Anderson_blumenau

Form Transparente e transpassavel

var 
  AControl: TControl; 
  A, Margin, X, Y, CtlX, CtlY: Integer;
  Fullrgn,CtlRgn,ClientRgn : thandle; 
begin 
  Margin    := (Width - ClientWidth) div 2; 
  FullRgn   := CreateRectRgn(0, 0, Width, Height); 
  X         := Margin; 
  Y         := Height - ClientHeight - Margin; 
  ClientRgn := CreateRectRgn(X, Y, X + ClientWidth, Y + ClientHeight); 
  CombineRgn(FullRgn, FullRgn, ClientRgn, RGN_DIFF); 
  for A := 0 to ControlCount - 1 do 
  begin 
    AControl := Controls[A]; 
    if (AControl is TWinControl) or (AControl is TGraphicControl) then with AControl do 
      begin 
        if Visible then 
        begin 
          CtlX   := X + Left; 
          CtlY   := Y + Top; 
          CtlRgn := CreateRectRgn(CtlX, CtlY, CtlX + Width, CtlY + Height); 
          CombineRgn(FullRgn, FullRgn, CtlRgn, RGN_OR); 
        end; 
      end; 
  end; 
  SetWindowRgn(Handle, FullRgn, True);



Responder

15/12/2003

Cebikyn

Resposta à segunda parte da pergunta (clicar na figura e arrastar o form):

No OnMouseDown de sua figura (TImage), coloque:

  ReleaseCapture;
  Perform(WM_SYSCOMMAND,$F012,0);

Se a figura for desenhada direto no Canvas do form, o código tb funciona, bastando colocar o código no OnMouseDown do form.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar