Minimizando controles en tu form  

Enviado Por: Radikal (Q3 Team)
Web : http://www.q3.nu
Email: radikal@q3.nu
Fecha: 04/02/00

Truco accedido 52 veces

 


Esto más que un truco... es una curiosidad.
Todos los controles de Delphi derivados de TWinControl, para Windows no son más que ventanas.
Teniendo esto en cuenta... ¿que pasa si por ejemplo, le decimos a un TMemo o a un TButton que se minimice?

Prueba esto y lo verás:

  • Pon un TMemo (Memo1) y un TButton en tu form
  • Pon este código en el OnClick del TButton:


     procedure TForm1.Button3Click(Sender: TObject);
     begin
       CloseWindow(Memo1.Handle);
     end;
    





    Minimizar un control dentro de tu form, en un sitio determinado




     procedure TForm1.Button1Click(Sender: TObject);
    
       Procedure MinimizaEn(Que:THandle;X,Y:integer);
       var
         Posiciones: TWindowPlacement;
       begin
         Posiciones.length:=SizeOf(Posiciones);
         GetWindowPlacement(Que,@Posiciones);
         Posiciones.flags:=WPF_SETMINPOSITION;
         Posiciones.ptMinPosition.x:=X;
         Posiciones.ptMinPosition.y:=Y;
         SetWindowPlacement(Que,@Posiciones);
         CloseWindow(Que);
       end;
    
     begin
       MinimizaEn(Memo1.Handle,20,30);
     end;
    




    Actualizado el 04/02/2000